Manuel:Pywikibot/pagegenerators.py

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Pywikibot/pagegenerators.py and the translation is 56% complete.
Outdated translations are marked like this.
Other languages:
English • ‎español • ‎français • ‎lietuvių • ‎polski • ‎čeština • ‎Ελληνικά • ‎українська • ‎العربية • ‎中文 • ‎日本語 • ‎한국어
Git logo

pagegenerators.py is a Manuel:Pywikibot script used to generate list of pages for other scripts.

Ce module offre une grande variété de générateurs de pages. Un générateur est un objet itérable (dans le langage https://www.python.org/dev/peps/pep-0255/) qui itère sur un ensemble d'objet "pages" que les autres scripts peuvent ensuite utiliser

Utilisation en ligne de commande

La version core ne peut être utilisé que par l'intermédiaire du scripts $listpg (ou autre), pas directement.

Exemple:

$ python pwb.py listpages -search:'foobar'

Cet commande affiche sur la sortie standard la liste des pages retournée par la recherche foobar du moteur de recherche de mediawiki.

See listpages.py for more details.

Appels depuis un autre programme

Récupérateur de Catégories:

from pywikibot import pagegenerators

site = pywikibot.Site()
cat = pywikibot.Category(site, 'Category:Example')
pages = cat.articles()
for page in pagegenerators.PreloadingGenerator(pages, 100):
    # some treatment of generated pages

Explorateur de sous-catégorie:

gen = pagegenerators.CategorizedPageGenerator(cat, recurse=True)

requête MySQL:

gen = pagegenerators.MySQLPageGenerator(query)

recommandation Unicode

Le code suivant renvoie une erreur Key error: 'query' à cause des caractères spéciaux:

gen = pagegenerators.SearchPageGenerator(u'´', namespaces = [0])

Si vous cherchez dans les espaces Utilisateur et Mediawiki, le résultat ressemblerait à

gen = pagegenerators.SearchPageGenerator(u'´', namespaces = [2, 8])

Par conséquent, [$toolserver une conversion d'encodage] est nécessaire:

gen = pagegenerators.SearchPageGenerator("´", namespaces = [0])

See also