أرابيكا:بوت/أسئلة/أرشيف 1

من أرابيكا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث
تمت الأرشفة
أرشيف هذه الصفحة صفحة أرشيف. من فضلك لا تعدلها. لإضافة تعليقات جديدة عدل الصفحة الأصلية.
أرشيف 1

بوت

بوتي لا يعمل لماذا اسم البوت @1999franbot: ماذا افعل. --1999fran (نقاش) 17:00، 12 مايو 2014 (ت ع م)

@1999fran: طلبك هذا يسيء الي هذه الصفحة من بدايتها ويعرقل اي محاولة لمساعدتك ، كيف لنا ان نساعدك ونحن لا نعلم شيئا وانت لا تعطينا اي تفاصيل عن المشكلة ... ماهي الخطوات التي قمت بها ؟ وهل نفذت التعليمات جيدا ام واجهتك مشكلة ؟ وكيف لا يعمل بوتك ؟ --مستخدم:Ibrahim.ID/توقيع/1 23:30، 12 مايو 2014 (ت ع م)

@Ibrahim.ID: لقد حاولت تنزيل هذا البرنامج مساعدة:الشروع في العمل مع بوت بايثون قمت (بتثبيت برنامج Python) و كذلك حملت (برنامج ++notepad) و لكن عندما وصلت الى برنامج (تحمیل کودات Pywikipedia) لم يحمل اصلأ لم يكن هناك شئ للتحميل الفيديو لا يشرح كيف احمله. --1999fran (نقاش) 04:05، 13 مايو 2014 (ت ع م)

نعم أخي رابط ملفات الأكواد قديم، ولا يعمل.. تفضل الرابط المباشر للملف.. --شبيب السبيعي..ناقشني 08:51، 13 مايو 2014 (ت ع م)

مساعدة في تشغيل البوت على التوللابز..

السلام عليكم.. شكراً إبراهيم على إنشاء هذه الصفحة .. قام أبو هايدي مشكوراً بمساعدتي في إنشاء حساب في التوللابز وإنشاء الأداة وما إلى ذلك.. لكن واجهتني مشكلة.. سأستعرض لكم الخطوات التي قمت بعملها لتتضح الفكرة عسى أن أجد حلّاً لهذه المشكلة:

  • قمت بفتح حساب في الWikiMedia ثم رفعت المفتاح العام الذي ولدته من برنامج Putty، وطلبت صلاحية الوصول للأدوات وحصلت عليها.. ثم قمت بإنشاء أداة أسميتها shbibbot..
  • في إعدادات برنامج Putty قمت بعمل كل شيء لكنه يرفض الدخول حين إدخال اسم حسابي (Shbib Al-Subaie) في موقع WikiMedia، لكن يدخل إذا استخدمت الشيل أكاونت..
  • بعد دخولي للبرنامج أدخلت كلمة السر التي وضعتها للمفتاح الخاص، وكتبت become shbibbot فأصبحت الأداة..
  • طبّقت شرح الأخ عباس في مساعدة:الشروع في العمل مع توللابز ونصّبت البايثون في مجلد الأداة في التوللابز..
  • عند تطبيق خطوة ربط الحساب بقاعدة البيانات، لا أجد ملف user-config.py لتطبيق الخطوة عليه، ولا أستطيع التعديل على الملفات في مجلد الأداة على التوللابز حيث تظهر رسالة تخبرني بعدم وجود تصريح..
  • قمت بنقل الملفات بهذا الكود الذي حصلت عليه من هذه الصفحة، هو كالتالي:
become shbibbot
chmod -R g+w /data/project/shbibbot
logout
cp -rv /home/shbibalsubaie/* /data/project/shbibbot/
  • بعد ذلك أصبح بإمكاني التعديل على ملفات مجلد الأداة.. لذا قمت بإنشاء ملف user-config.py ووضعت فيه كود ملفات المستخدم، وطبّقت خطوة ربط الحساب بقاعدة البيانات، وقُبل الملف بدون أيّ مشاكل..
  • بالنسبة لملف user-config.py فملف user-config.py.simple يذكر بأنه يجب أن يكون الملف بهذا الشكل:
# -*- coding: utf-8  -*-

# This is a sample file. You should use generate_user_files.py
# to create your user-config.py file.

mylang = 'en'
family = 'wikipedia'
usernames['wikipedia']['en'] = 'Test'

ويجب استخدام ملف generate_user_files.py لتوليده، لكن حينما أدخل كأداة في برنامج Putty ثم أدخل مجلد pywikipedia وأدخل الكود لتنفيذه تظهر رسالة تقول: "generate_user_files.py:: command not found"، لهذا أنشأت ملف في مجلد pywikipedia وأسميته user-config.py ووضعت في داخله الكود التالي:

family = 'wikipedia'
mylang = 'ar'
usernames['wikipedia']['ar'] = u'SHBot'
console_encoding = 'utf-8'
db_username = 'اسم المستخدم'
db_password = 'كلمة السر'

طبعاً آخر سطرين من تطبيق خطوة ربط الحساب بقاعدة البيانات.. وكما هو ملاحظ فحرف u غير موجود في المثال، ولكن في ملف إعدادات اليوزر الخاص بأبو هايدي الحرف متواجد، جربت بالحرف وبدونه ولكن لا فائدة..

  • خلاصة المشكلة: أن الرسالة "command not found" تظهر دائماً بعد إدخال اسم أي كود لتنفيذه، لهذا البوت لا يعمل.. هل من حل لذلك؟! أو هل نسيت أي خطوة؟! وعذراً على الإطالة التي هي بداعي توضيح المشكلة.. --شبيب السبيعي..ناقشني 08:26، 13 مايو 2014 (ت ع م)



مرحبا @Shbib Al-Subaie: ، مبدئيا انا لا اعرف ملف بأسم generate_user_files.py ولم أتعامل معه من قبل ولا اعرف ان كان موجود ام لا ، ولكن عموما عندما تضع الاوامر في التولابز يجب ان يسبقها كلمة python .. يعني لو أردنا تشغيل replace.py يكون الأمر كالآتي:
python replace.py

ثانيا: يبدوا أنك نسيت هذه الخطوة : هناك ملف في المجلد الرئيسي في حسابك على التولابز واسمه replica.my.cnf افتح الملف وستجد بداخله كلمة السر واسم مستخدم خاص بك. انسخها وأضفها في نهاية ملف user-config.py كالتالي db_username = "الاسم" db_password = "كلمة السر"

ثالثا: هناك مشكلة لم نعرف لها حلا في مجلد pywikipedia ، حيث أنك لا تستطيع نقل الملفات او تعديل الملفات فيه بشكل مباشر ... ولذلك نحن نلجا الي طريقة بديلة وهي انشاء مجلد ثاني وهو pyfolder ونقوم بنقل الملفات له ثم عن طريق الاوامر يتم نسخ هذا الملفات الي مجلد pywikipedia ... حاول ان تتبع هذه الطريقة وان شاء الله سيتم علاج مشكلتك --مستخدم:Ibrahim.ID/توقيع/1 11:14، 13 مايو 2014 (ت ع م)

شكراً إبراهيم، حُلّت المشكلة، أنشأت أداة جديدة واستخدمت الأمر login.py وقام هو تلقائياً بتوليد ملف user-config.py بعد طلب بعض البيانات.. شكراً لاهتمامك.. --شبيب السبيعي..ناقشني 19:39، 13 مايو 2014 (ت ع م)

@Ibrahim.ID: حل مشكلة نقل الملفات إلى مجلد pywikipedia سهلة وهي تعديل تصريح المجلد من 2755 إلى 2775

chmod 2775 pywikipedia

--زاهر نقاش 20:15، 13 مايو 2014 (ت ع م)

قواعد البيانات

أود أن أعرف هيكلية قواعد البيانات التي يستعملها محرك الويكي حتى أتمكن من استخراج البيانات عبر SQL. فهل يوجد صفحات توضيحية عن الأمر.--- مع تحياتي ---(أدلي برأيك)-- وهراني 15:24، 9 أغسطس 2014 (ت ع م)

@وهراني: هل تقصد هذه؟ https://www.mediawiki.org/wiki/Manual:Database_layout --مستخدم:Ibrahim.ID/توقيع/1 16:22، 9 أغسطس 2014 (ت ع م)
نعم هو ذاك. شكرا جزيلا @Ibrahim.ID:. --- مع تحياتي ---(أدلي برأيك)-- وهراني 17:30، 9 أغسطس 2014 (ت ع م)

بوت

drissmlds ماهي الشروط التي يجب ان تتوفر في لأمتلك بوت ؟

إستفسار

هذا أ؛تطبيق أسمه Mosh إسمه الكامل Mosh (mobile shell) for Chrome موقعه[1] هل هذا تطبيق يشغل بوت ،،،،،،--Badr alkabir (نقاش) 20:26، 2 يونيو 2015 (ت ع م)

مشكلة

مرحباً: عند محاولة تنفيذ أي أمر في التوللابز تظهر هذه المشكلة:

tools.himo@tools-bastion-01:~/coo$ python ph.py
Traceback (most recent call last):
  File "ph.py", line 23, in <module>
    import wikipedia as pywikibot
ImportError: No module named wikipedia

فما الحل.؟! --مستخدم:Mr. Ibrahem/توقيعي 21:43، 14 ديسمبر 2015 (ت ع م)

@Mr. Ibrahem: إذا كنت تستخدم Pywikibot core عليك أن تضع ملف البوت في مجلد scripts وثم شغله. لكن على ما يبدو أن الكود الذي تشغله غير متوافق مع core إذا استمرت المشكلة عليك استخدام Pywikibot compat --زاهر نقاش 16:52، 15 ديسمبر 2015 (ت ع م)

كرون

السلام عليكم، وضعت في ملف المهمة الأمر التالي:

#!/bin/bash
cd /data/project/mytool/compat9
python redirect.py action [-moves] double -always

وفي الكرون:

0 * * * * python /data/project/mytool/task2.sh >/dev/null 2>&1

وكان الناتج الخطأ التالي:

  File "/data/project/mytool/task2.sh", line 3
    python redirect.py action [-moves] double -always
                  ^
SyntaxError: invalid syntax

8-[ --مستخدم:Mr. Ibrahem/توقيعي 18:24، 20 ديسمبر 2015 (ت ع م)

@Mr. Ibrahem: السبب أن صيغة الأمر الذي وضعته في الملف خاطئ والصحيح هو
python pywikibot/redirect.py double -moves -always
مع تعديل pywikibot إلى اسم مجلد البوت لديك. --زاهر نقاش 16:37، 22 ديسمبر 2015 (ت ع م)
مرحباً زاهر شكراً لك على الإجابة، طبعاً الخطأ كان في ملف الكرون فكان يجب كتابة sh بدلا من python ، بالنسبة لملفات البوت فهي في المجلد الرئيسي له --مستخدم:Mr. Ibrahem/توقيعي 17:58، 22 ديسمبر 2015 (ت ع م)
@Mr. Ibrahem: أنت تحتاج تصحيح شيئين الأول هو الأمر في داخل ملف المهمة كما ذكرت أعلاه والثاني هو تصحيح الأمر في الكرون لن يعمل لديك لو استبدلت python بـ sh حتى يعمل بشكل صحيح أنت تحتاج إلى تشغيلها من خلال Grid لذلك يصبح السطر في الكرون هكذا
0 * * * * jsub task2.sh >/dev/null 2>&1

--زاهر نقاش 11:26، 23 ديسمبر 2015 (ت ع م)

أشكرك زاهر على تفاعلك، بصراحة أنا بحثت في العديد من المواقع عن الطريقة الصحيحة ووجدت الطريقة التي ذكرتها سابقاً وهي تعمل معي بنجاح، وأظن أن المشكلة الأولى كانت لأن هناك أمرين python وراء بعض الأول في الكرون، والثاني بداخل ملف المهمة. وعندما أستبدلت الموجود في الكرون ب sh أصبح الأمر:
0 * * * * sh /data/project/mytool/task2.sh >/dev/null 2>&1

وعند الحفظ قام البايثون بتعديله ليصبح كالتالي:

0 * * * *  /usr/bin/jsub -N cron-tools.mytool-2 -once -quiet sh /data/project/mytool/task2.sh >/dev/null 2>&1

ويعمل بنجاح حالياً--مستخدم:Mr. Ibrahem/توقيعي 15:20، 23 ديسمبر 2015 (ت ع م)

استفسارات

مرحبا لدي عدة أسالة أرجو ان احصل على إجابات وأقدر مسبقاً أي رد،

  • لدي أستفسار حول هذا الكود بوت/التصانيف المعادلة

هل الكود مازال يعمل؟! وهل يوجد كود مشابه له

  • هل يوجد كود لإضافات وصلات مقال أرابيكا الإنجليزية لصفحات موجودة في الأرابيكا العربية. (أرجو ان يكون سؤالي واضح)

كمثال نيويورك موجودة في الموسوعة يوجد في المقالة الإنجليزية كم كبير من الوصلات فيها هل يمكن إضافة هذه الوصلات للصفحات الموجودة عبر البوت بدل اضافتها يدوياً، (مقال نيويورك كمثال اعلم المقالة مختارة لدينا).

  • من أين أحصل على كودات الصيانة مثلا أو يجب علي أنشئ كودات خاصة لبوتي بنفسي.

شكراً لكم.--مستخدم:جار الله/توقيع 02:11، 2 يناير 2016 (ت ع م)


أهلا بك:

  1. التصانيف المعادلة لا أعرف مستجداتها الصراحة، عباس وزاهر أكثر خبرة ويقدر يفيدوك في ذلك.
  2. ما المقصود بالوصلات؟ هل تقصد روابط داخلية (بين المقالات) أم روابط بين المقالة العربية والانجليزية والألمانية .. الخ.
  3. أكواد الصيانة هناك 3 طرق: الأكواد العادية والموضوعة في قالب:إدارة بوت - مكتبة الاسكربتات بايثون (سواء compat أو core) هناك الكثير منها ولكن يجب تجربتها والتأكد منها أولا - المكتبة على ميدياويكي (تحتاج إلى تعريب وتجربة أولا).

--مستخدم:Ibrahim.ID/توقيع/1 08:16، 4 يناير 2016 (ت ع م)

شكراً على الرد

  • الوصلات الداخلية المعادلة كالتصانيف المعادلة (اعتقد لا يوجد هكذا أمر :) )
  • سؤال أين اطرح إضافة مهمة جديدة، حيث أرغب بعمل مهمة جديدة : "إزالة قالب تحرر من المقالات" و "إضافة قوالب الصيانة"

المهمة للمقالات التي مضى شهر ولا يوجد تعديل لتطويرها، المهمة مفيدة حيث بعض البوتات لا تعدل على المقالات التي يتواجد هذا القالب بها ومن ناحية ثانية لأفساح المجال للمستخدمين بتطوير المقال.--مستخدم:جار الله/توقيع 00:31، 7 يناير 2016 (ت ع م)

إذا كنت تقصد إنشاء وصلات مثلما فعلتها في تجربة البوت، لا يوجد سكربت أو بوت يقوم بهذه المهمة الحقيقة، يمكنك استخدام طريقتك هذه بشرط أن تكون مع جمل مركبة (الثورة الفرنسية) مثلاً ، او استخدمها مع كلمات ليس بها تشكيل أو لها أكثر من معنى بحيث تتفادى الأخطاء ، يعني مثلا: عُمان غير عَمان، مِصر غير مٌصر.
بخصوص المهام الجديد يمكنك طرح اسم المهمة (مع بعض التجارب) في ميدان التقنية، وفي حالة موافقة الجميع وعدم وجود إعتراضات يمكنك تنفيذ المهمة--مستخدم:Ibrahim.ID/توقيع/1 07:34، 7 يناير 2016 (ت ع م)