Project:Pywikibot/2.0/Porting status
The following table lists all directories and files currently in the legacy compat version, and their status of being ported to core. Please help update this table. See also Manual:Pywikibot/Scripts.
Porting status should be either "Done", "Not Done", or "N/A" for files that do not need to be ported.
notdone | {{{core}}} | {{{comments}}} | notdone | |
{{{core}}} | {{{comments}}} | review | ||
{{{core}}} | {{{comments}}} | done | ||
{{{core}}} | {{{comments}}} | na |
Framework
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./apispec.py | "This is a library for querying special pages through API."
Currently only handles blocks; should be moved somewhere under pywikibot.* |
bugzilla:64835 | notdone | |
./pywikibot/page.py | Library function.
"Allows access to the site's bot user list. The function refresh() downloads the current bot user list and saves it to disk. It is run automatically when a bot first tries to get this data." Seems to only be used to find the last 'human' editor (Page.userNameHuman); A lastNonBotUser function is added to pywikibot/page.py in core resolving it's usage. Page.userNameHuman is not available yet |
bugzilla:64833 | done | |
./scripts/category.py | done | |||
./pywikibot/catlib.py | done | |||
pywikibot/config2.py | done | |||
Should be merged with general documentation. | bugzilla:64847 | review | ||
docs | na | |||
./pywikibot/families/ | done | |||
./pywikibot/family.py | done | |||
./pywikibot/fixes.py | done | |||
./pywikibot/date.py | done | |||
Lib to cache dictionaries on-disk. No longer necessary -- we can cache complete API queries. | na | |||
./pywikibot/interwiki_graph.py | done | |||
./LICENSE | done | |||
"Usable example module: Use of pywikipedia as a library." Not relevant anymore now that pywikibot is nstallable. | na | |||
./pywikibot/pagegenerators.py | done | |||
./pageimport.py | Should be re-written for API and placed in pywikibot.site (?) | bugzilla:64877 | notdone | |
./pywikibot/ | done | |||
pywikibot/compat/query.py | done | |||
./README.md | done | |||
nosetests config. Replaced by travis/jenkins. | na | |||
Part of login-data.py | na | |||
./pywikibot/userinterfaces/ | The GUI interfaces were non-functional and have been removed | done | ||
./pywikibot/userlib.py | done | |||
"Allows access to the bot account's watchlist."
We have functions to edit the watchlist and to walk over new edits, so I think we can safely ignore this file. |
na | |||
"This library allows the use of the pywikipediabot directly from COM-aware
applications." I would suggest VB6 users to not use VB6 :-p |
na | |||
pywikibot/* | done | |||
pywikibot/* | done | |||
./pywikibot/xmlreader.py | done | |||
./families/README-family.txt | notdone |
User tools
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
Ugly hack to daemonize a process. Not in scope for pwb. | na | |||
./generate_family_file.py | done | |||
./generate_user_files.py | done | |||
./pwb.py | Note that compat pwb.py is a script cooked up by DrTrigon to run SGE jobs on the toolserver. That one should never have been in the repository. | na | ||
./user-config.py.sample | done |
Generic scripts
editThese can still be WMF specific, but should be usable on most sites.
In compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./scripts/add_text.py | done | |||
./scripts/basic.py | done | |||
./scripts/blockpageschecker.py | done | |||
./scripts/catall.py | Add or change categories on a number of pages. Usage: catall.py name - goes
through pages, starting at 'name'. Provides the categories on the page and asks whether to change them. If no starting name is provided, the bot starts at 'A'. |
done | ||
./scripts/category_redirect.py | This bot will move pages out of redirected categories | done | ||
./scripts/checkimages.py | Script to check recently uploaded files. This script checks if a file
description is present and if there are other problems in the image's description. |
done | ||
./scripts/clean_sandbox.py | done | |||
./scripts/commonscat.py | done | |||
./scripts/commons_link.py | Include commons template in home wiki. | done | ||
./scripts/cosmetic_changes.py | done | |||
./scripts/delete.py | done | |||
./scripts/disambredir.py | done | |||
./scripts/editarticle.py | done | |||
./scripts/featured.py | done | |||
./scripts/fixing_redirects.py | done | |||
.scripts/listpages.py | Very simple script which gets a page and writes its contents to standard output. This makes it possible to pipe the text to another process. | bugzilla:64855 | done | |
./scripts/image.py | This script can be used to change one image to another or remove an image entirely. | done | ||
./scripts/isbn.py | done | |||
./scripts/login.py | done | |||
./scripts/lonelypages.py | done | |||
./scripts/makecat.py | done | |||
./scripts/misspelling.py | done | |||
./scripts/movepages.py | done | |||
./scripts/noreferences.py | done | |||
./scripts/nowcommons.py | done | |||
./overcat_simple_filter.py | bugzilla:64876 | notdone | ||
./scripts/pagefromfile.py | done | |||
./scripts/listpages.py | done | |||
"This is a bot that uses external filtering programs to munge the
article text, for example: python piper.py -filter:'tr A-Z a-z' Wikipedia:Sandbox " Not sure about the usefulness of this, but I like the unix-y style. |
done | |||
./scripts/protect.py | done | |||
./scripts/redirect.py | done | |||
./scripts/reflinks.py | done | |||
./scripts/replace.py | done | |||
./scripts/replicate_wiki.py | done | |||
./scripts/revertbot.py | done | |||
This bot goes over multiple pages of the home wiki, searches for selflinks, and
allows removing them. Maybe should be part of cosmetic_changes.py? |
done | |||
./scripts/solve_disambiguation.py | done | |||
./scripts/spamremove.py | done | |||
./standardize_notes.py | This bot will standardize footnote references. It will retrieve information on
which pages might need changes either from an SQL dump (no longer supported) or a text file, or only change a single page. |
notdone | ||
./table2wiki.py | "Nifty script to convert HTML-tables to MediaWiki's own syntax."
Is this still relevant? |
notdone | ||
./scripts/templatecount.py | "This script will display the list of pages transcluding a given list of templates. It can also be used to simply count the number of pages (rather than listing each individually)." | done | ||
./scripts/template.py | done | |||
./pywikibot/titletranslate.py | done | |||
./scripts/touch.py | done | |||
./scripts/unlink.py"This bot unlinks a page on every page that links to it." | done | |||
./scripts/unusedfiles.py | done | |||
./scripts/upload.py | done | |||
./scripts/version.py | done | |||
./scripts/weblinkchecker.py | done | |||
./scripts/welcome.py | done |
Specialty scripts
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./scripts/archivebot.py | done | |||
"This bot implements a blocking review process for de-wiki first.
For other sites this bot script must be changed. This script is run by de:User:xqt. It should not be run by other users without prior contact." |
bugzilla:64832 | done | ||
./scripts/casechecker.py | Script to enumerate all pages on the wiki and find all titles
with mixed latin and cyrilic alphabets |
done | ||
./scripts/cfd.py | This script processes the Categories for discussion working page. It parses
out the actions that need to be taken as a result of CFD discussions (as posted to the working page by an administrator) and performs them. |
done | ||
./category_redirect.py | Script to clean up
http://commons.wikimedia.org/wiki/Category:Non-empty_category_redirects Moves all images, pages and categories in redirect categories to the target category. |
bugzilla:64845 | done | |
./scripts/create_categories.py | done | |||
./scripts/data_ingestion.py | done | |||
./deledpimage.py | Script to remove EDP images in non-article namespaces. This script is currently
used on the Chinese wikipedia. |
bugzilla:64849 | notdone | |
This bot uploads text from djvu files onto pages in the "Page". Application: on Wikisource, with Extension:Proofread Page, it is
possible to preload text from a not existing page in the Page namespace, if the corresponding Index page is present. If a djvu file is connected to an Index page, text is basically already available, making this script less important. namespace. It is intended to be used for Wikisource. |
bugzilla:64853 | na | ||
"Script to extract all wiki page names a certain HTML file points to in
interwiki-link format The output can be used as input to interwiki.py." Looks like a one-off script to me; suggest to discard. |
na | |||
./followlive.py | "Script to follow new articles on a wikipedia and flag them
with a template or eventually blank them. There must be A LOT of bugs ! Use with caution and verify what it is doing !" |
bugzilla:64854 | notdone | |
./scripts/harvest_template.py | done | |||
./scripts/imagerecat.py | done | |||
./scripts/imagetransfer.py | done | |||
./scripts/imageuncat.py | done | |||
./inline_images.py | "This bot goes over multiple pages of the home wiki, and looks for images that are linked inline (i.e., they are hosted from an external server and hotlinked, instead of using the wiki's upload function."
Move to generic scripts repo? |
bugzilla:64870 | notdone | |
./parserfunctioncount.py | This script helps to find expensive templates that are subject to be converted
to Lua. It counts parser functions and then orders templates by number of these and uploads the first n titles or alternatively templates having count()>n. |
bugzilla:64878 | notdone | |
"This bot obtains a list of recentchanges and newpages and marks the
edits as patrolled based on a whitelist." Specialty bot, should not be in pywikibot repository. |
done | |||
This bot is used to quickly trawl through candidates for speedy deletion in a fast and semi-automated fashion. The bot displays the contents of each pageone at a time and provides a prompt for the user to skip or delete the page. Of course, this will require a sysop account. | bugzilla:64880 | review | ||
./spellcheck.py | "This bot spellchecks Wikipedia pages. It is very simple, only checking
whether a word, stripped to its 'essence' is in the list or not, it does not do any grammar checking or such. It can be used in four ways:" |
notdone | ||
./statistics_in_wikitable.py | \03{lightyellow}This bot renders statistics provided by Special:Statistics in a table on a wiki page.\03{default}
Thus it creates and updates a Statistics wikitable. |
notdone | ||
'Robot which connects to Recent Changes channel and runs "SubsterBot" whenever
needed.' Specialty bot, should be in it's own repo. |
na | |||
"Robot which will does substitutions of tags within wiki page content with external or other wiki text data. Like dynamic text updating."
Specialty bot, should be in it's own repo. |
na | |||
"This bot is used for summarize discussions spread over the whole wiki
including all namespaces. It checks several users (at request), sequential (currently for the german wiki [de] only)." Specialty bot, should be in it's own repo. |
na | |||
./scripts/states_redirect.py | "Renamed to states-redirect.py as it covers more than US States redirection. Sub-divisions used for all countries using pycountry" | done |
Interwiki
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./scripts/interwiki.py | done | |||
./splitwarning.py | "Splits a interwiki.log file into chunks of warnings separated by language."
Are warning files used at all anymore? |
notdone | ||
./standardize_interwiki.py | Loop over all pages in the home wiki, standardizing the interwiki links. | notdone | ||
./warnfile.py | "A robot to implement backlinks from a interwiki.log file without checking them
against the live wikipedia. |
bugzilla:59097 | notdone |
Redirect-creation scripts
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
"Bot to create capitalized redirects where the first character of the first
word is uppercase and the remainig characters and words are lowercase." |
bugzilla:64837 | done | ||
./ndashredir.py | "This script will collect articles that have n dash or m dash character in their
title, and create a redirect to them automatically from the corresponding hyphenated title. " |
bugzilla:64875 | notdone |
Image classification
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./catimages.py | "Image by content categorization derived from 'checkimages.py'.
Script to check uncategorized files. This script checks if a file has some content that allows to assign it to a category." OpenCV-based image classification. Is this within scope for the 'standard library of scripts'? I think having this as a seperate package makes more sense. |
bugzilla:64838 | notdone | |
Program to match two images based on histograms.
Move to scripts repo |
bugzilla:64871 | done |
Image upload tools
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./scripts/flickrripper.py | done | |||
./imagecopy.py | Commons upload cluster | bugzilla:64856 | notdone | |
./imagecopy_self.py | Commons upload cluster | bugzilla:64856 | notdone | |
./imageharvest.py | Commons upload cluster | bugzilla:64856 | notdone | |
./panoramiopicker.py | Commons upload cluster | bugzilla:64856 | notdone | |
./tag_nowcommons.py | "Bot tag tag files available at Commons with the Nowcommons template."
Specialty bot; should be moved to it's own repo (Commons upload bots?) |
bugzilla:64159 | notdone |
Maintainer.py
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./censure.py | Maintainer.py cluster | bugzilla:64839 | notdone | |
./maintainer.py | Maintainer.py cluster | bugzilla:64839 | notdone | |
./maintcont.py | Maintainer.py cluster | bugzilla:64839 | notdone | |
./rciw.py | Maintainer.py cluster | bugzilla:64839 | notdone |
Commonsdelinker
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
Commonsdelinker init | bugzilla:64850 | done | ||
Part of CommonsDelinker | bugzilla:64850 | na | ||
bugzilla:64850 | done |
Moved to a separate repository: http://git.wikimedia.org/tree/pywikibot%2Fbots%2FCommonsDelinker.git
Copyright
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./copyright_clean.py | copyright.py cluster | bugzilla:64848 | notdone | |
./copyright_put.py | copyright.py cluster | bugzilla:64848 | notdone | |
./copyright.py | This robot checks copyright text in Google, Yahoo! and Live Search. | bugzilla:64848 | notdone | |
./copyright/exclusion_list.txt | Copyright cluster | bugzilla:64848 | notdone | |
./copyright/site_protected_list.txt | bugzilla:64848 | notdone |
Wiktionary
editThis is now a separate pywikibot-wiktionary repository.
In compat | In core | Comments | Bug | Status |
---|---|---|---|---|
AFAIS this is a duplicate of all the smaller individual files | bugzilla:64881 | na | ||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done | |||
bugzilla:64881 | done |
Maintenance scripts
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
./scripts/maintenance/ | done | |||
"No longer needed with disambiguator extension" | na | |||
Managed by pep8 checks | na | |||
Checks namespaces in family files. No longer necessary | na | |||
./scripts/maintenance/make_i18n_dict.py | done | |||
./maintenance/preferences.py | "This module contains a read-write class that represents the user preferences" | notdone | ||
./maintenance/readtalk.py | This tool will go through all the normal (not sysop) accounts configured in
user-config and output the contents of the talk page. |
notdone | ||
"This tool prepares and sets the framework directory for final release by
performing several actions:" We don't do 'real' releases anymore, and if we do, we probably want to do something else. |
na | |||
"This tool sets an email address on all bot accounts and email confirms them."
We have SUL now. |
na | |||
"This utility's primary use is to find all mismatches between the namespace
naming in the family files and the language files on the wiki servers." Namespaces are retrieved from the server in core. |
na | |||
Namespaces are retrieved from the server in core. | na | |||
./scripts/maintenance/wikimedia_sites.py | done |
Broken/unclear scripts
editIn compat | In core | Comments | Bug | Status |
---|---|---|---|---|
"A script that displays the ordinal number of the new articles being created
visible on the Recent Changes list." Seems broken -- does not respond to IRC messages, and I'm not sure what the 'ordinal number' should be (size?). Can be removed? |
na | |||
" A window with a unicode textfield where the user can e.g. edit
the contents of an article" Could be useful as part of an userinterface, but currently does not run on compat. Marked as na. |
na | |||
"A tool to see the recentchanges ordered by user instead of by date. This
is meant to be run as a CGI script." Not in scope and does not really depend on pywikibot (just uses it to get the address of Special:RecentChanges) |
na | |||
"This bot downloads the HTML-pages of articles and images
and saves the interesting parts, i.e. the article-text and the footer to a file like Hauptseite.txt." There are much better tools for local wiki-viewing, and I think this is out of scope. |
na | |||
Bot to pipe some unclear format to some unclear UDP server @ toolserver.
Not within scope. |
na |