دليل:باي ويكي بوت/pagegenerators.py
مستودع جت لويكيميديا به هذا الملف: pywikibot/pagegenerators.py |
pagegenerators.py هو نص برمجي من باي ويكي بوت يُستخدَم لتوليد قائمة صفحات للنصوص البرمجية الأخرى.
هذه الوحدة تقدم تشكيلة واسعة من مولدات الصفحات. مولد الصفحات هو كائن تكراري (انظر https://www.python.org/dev/peps/pep-0255/) ويعود بكائنات الصفحات والتي يمكن استخدامها من النصوص البرمجية الأخرى.
استخدام سطور الأوامر
pagegenerators.py قد لا يُنفَّذ مباشرةً. بدلاً من ذلك، يمكن استخدام النص البرمجي listpages.py .
مثال:
$ python pwb.py listpages -search:'foobar'
سيعود هذا - بخرج قياسي - بقائمة للصفحات التي تحتوي "foobar"، والذي يعود به محرك بحث ميدياويكي.
انظر listpages.py لمزيد من التفاصيل.
استدعاءات من نص برمجي آخر
زاحف التصنيفات:
from pywikibot import pagegenerators
site = pywikibot.Site()
cat = pywikibot.Category(site, 'Category name')
pages = cat.articles()
for page in pagegenerators.PreloadingGenerator(pages, 100):
# some treatment of generated pages
متصفح التصنيفات الفرعية:
gen = pagegenerators.CategorizedPageGenerator(cat, recurse=True)
طلبات ماي إس كيو إل (انظر دليل:باي ويكي بوت/ماي إس كيو إل ):
gen = pagegenerators.MySQLPageGenerator(query)
توصيات يونيكود
النص البرمجي الآتي يعود بخطأ KeyError: 'query' بسبب الرمز الخاص:
gen = pagegenerators.SearchPageGenerator('´', namespaces = [0])
إن كنت تبحث في نطاقي المستخدم وميدياويكي، سيبدو الأمر هكذا
gen = pagegenerators.SearchPageGenerator('´', namespaces = [2, 8])
بناء على ذلك، تحويل الترميز مطلوب:
gen = pagegenerators.SearchPageGenerator("´", namespaces = [0])