Manual: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 100% complete.

Other languages:
Deutsch • ‎English • ‎Nederlands • ‎català • ‎español • ‎français • ‎italiano • ‎lietuvių • ‎polski • ‎português do Brasil • ‎suomi • ‎čeština • ‎Ελληνικά • ‎русский • ‎中文 • ‎日本語 • ‎한국어
Git logo

"pagegenerators.py" es un script de Pywikibot que se usa para generar una lista de páginas para otros scripts.

Este módulo ofrece una amplia variedad de generadores de páginas. Un generador de páginas es un objeto que es iterable (ver https://www.python.org/dev/peps/pep-0255/) y que produce objetos de página que otros scripts pueden utilizar.

Uso en línea de comandos

Los pagegenerators.py pueden no ser ejecutados directamente. En su lugar, se puede utilizar el script listpages.py .

Ejemplo:

python pwb.py listpages -search:'foobar'

Esto devolverá, en la salida estándar, una lista de todas las páginas que contienen "foobar", tal y como lo devuelve el motor de búsqueda de MediaWiki.

Ver listpages.py para más detalles.

Llamadas desde otro script

Rastreador de categoría:

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

Explorador de subcategorías:

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

Solicitudes de MySQL (ver Manual:Pywikibot/MySQL ):

gen = pagegenerators.MySQLPageGenerator(query)


Recomendación de Unicode

El siguiente código devuelve KeyError: 'query' debido al carácter especial:

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

Si se busca en espacios de nombres de usuario y mediawiki, se vería como

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

Por consiguiente, se necesita una conversión de codificación:

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

Véase también