Wikipedia:Database reports/Configuration
wikitools
Every script uses wikitools.
The source code for all of the scripts is available on GitHub (under the name "database-reports").
Adding a report
- Create file
- $ git add
- $ git commit
- $ git push origin master
- $ git pull
- Run report
- Add entry to WP:DBR
- Add entry to crontab
- $ synctab
- Create configuration subpage
- Update /Announcements
Renaming a report
- Update file
- $ git commit
- $ git push origin master
- $ git pull
- Move wiki page (leave redirects if the report has been around for any substantial portion of time)
- Move configuration subpage (if not an admin)
- Update entry at WP:DBR
crontab
# INSTRUCTIONS
# MIN HOUR DAYMONTH MONTH DAYWEEK
# ARTICLES
0 19 6 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/deletedfilesinarticles.py > /dev/null
50 2 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/bullshitparams.py > /dev/null
12 0 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/linkedemailsinarticles.py > /dev/null
0 12 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/userlinksinarticles.py > /dev/null
0 12 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/coordoverlap.py > /dev/null
0 12 6 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/redlinkedfilesinarticles.py > /dev/null
# BIOGRAPHIES OF DEAD PEOPLE
30 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/potenshbdps1.py > /dev/null
35 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/potenshbdps2.py > /dev/null
40 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/potenshbdps3.py > /dev/null
# BIOGRAPHIES OF LIVING PEOPLE
0 2 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/unsourcedblps.py > /dev/null
0 3 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/stickyprodblps.py > /dev/null
45 0 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/potenshblps1.py > /dev/null
50 0 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/potenshblps2.py > /dev/null
55 0 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/potenshblps3.py > /dev/null
10 1 * * 5 PYTHONPATH=$HOME/scripts nice -n 15 python $HOME/scripts/database-reports/potenshblps4.py > /dev/null
0 1 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/shortestbios.py > /dev/null
15 8 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/uncatunrefblps.py > /dev/null
20 8 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/untaggedunrefblps.py > /dev/null
20 8 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/untaggedblps.py > /dev/null
# BLOCKS
0 0 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/indefips.py > /dev/null
5 0 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/rangeblocks.py > /dev/null
0 12 8 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/excessiveips.py > /dev/null
5 12 8 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/excessiveusers.py > /dev/null
# CATEGORIES
0 1 * * 0 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/redlinkedcatsincats.py > /dev/null
0 12 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/deletedredlinkedcats.py > /dev/null
0 1 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/emptycats.py > /dev/null
0 2 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/pollcats.py > /dev/null
0 22 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/linkedredlinkedcats.py > /dev/null
0 6 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/selfcatcats.py > /dev/null
0 2 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/polltemps.py > /dev/null
0 0 * * 1 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/uncatcats.py > /dev/null
0 0 2 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/usercats.py > /dev/null
# FILES
10 10 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/templatelessfilepages.py > /dev/null
40 10 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/catandtemplessfilepages.py > /dev/null
20 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/filelessfilepages.py > /dev/null
20 13 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/conflictedfiles.py > /dev/null
20 15 * * * sql enwiki_p < $HOME/queries/ns/ns_6_no_redirects.sql > /mnt/user-store/mzmcbride/enwiki_p-ns-6.txt; PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/dupefilenames.py > /dev/null
20 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/largenonfree.py > /dev/null
0 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/mistaggedfiles.py > /dev/null
20 18 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/nonfreemissingrat.py > /dev/null
5 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/templatesnonfree.py > /dev/null
10 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/pageslotnonfree.py > /dev/null
15 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/overusednonfree.py > /dev/null
0 3 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/unusednonfree.py > /dev/null
# PAGES
0 18 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/blankpages.py > /dev/null
0 18 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/longpages.py > /dev/null
5 18 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/olddeletiondiscussions.py > /dev/null
0 17 12 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/orphanedafds.py > /dev/null
0 18 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/orphanedprojs.py > /dev/null
0 6 * * 1,5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/orphanedtalks.py > /dev/null
0 6 * * 1 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/orphanedsubtalks.py > /dev/null
0 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/ownerlessuserpages.py > /dev/null
10 18 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/shortpages.py > /dev/null
0 12 10 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/redlinkedfilesintemplates.py > /dev/null
# PROTECTIONS
5 12 7 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/excessivefullarticles.py > /dev/null
35 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/indeffullarticles.py > /dev/null
45 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/indeffulltalks.py > /dev/null
6 12 7 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/protlowtemps.py > /dev/null
30 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/indefsemiarticles.py > /dev/null
40 0 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/indefsemitalks.py > /dev/null
0 12 7 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/excessivesemiarticles.py > /dev/null
# REDIRECTS
30 23 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/brokenredirects.py > /dev/null
45 9 * * * PYTHONPATH=$HOME/scripts:$HOME/lib/python2.7/site-packages python $HOME/scripts/database-reports/brokensectionanchors.py > /dev/null
30 0 1 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/crossredirects.py > /dev/null
30 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/redreds.py > /dev/null
30 18 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/longredirects.py > /dev/null
# STATISTICS
0 12 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/mostwatched.py > /dev/null
0 14 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/mostwatchedperns.py > /dev/null
0 16 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/mostwatchedusers.py > /dev/null
15 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/nscounts.py > /dev/null
0 5 28 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/mostrevisions.py > /dev/null
10 5 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/reviewercandidates.py > /dev/null
0 22 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/userprefs.py > /dev/null
0 13 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/usersbyupload.py > /dev/null
20 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/logactions.py > /dev/null
25 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/wikilovestats.py > /dev/null
# STUBS
0 15 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/longstubs.py > /dev/null
0 7 13 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/directstubs.py > /dev/null
0 16 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/unusedstubtemplates.py > /dev/null
# TEMPLATES
15 20 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/brokenwikiprojtemps.py > /dev/null
0 12 15 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/epontemps.py > /dev/null
5 20 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/templatedisambigs.py > /dev/null
0 15 8,22 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/mosttransclusions.py > /dev/null
25 15 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/deletedtrans.py > /dev/null
20 15 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/transusertemps.py > /dev/null
5 15 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/uncattemps.py > /dev/null
35 15 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/unprotectedtemps.py > /dev/null
0 15 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/unusedtemplates.py > /dev/null
10 15 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/usertempreds.py > /dev/null
# USERS
0 1 * * 1,4 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/confirmedusers.py > /dev/null
45 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/blankanontalks.py > /dev/null
0 15 6,20 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/blockeduserrights.py > /dev/null
0 15 6,20 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/inactiveuserrights.py > /dev/null
30 0 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/metarightschanges.py > /dev/null
55 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/oldiptalks.py > /dev/null
30 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/anononlyanons.py > /dev/null
0 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/noactionuserpages.py > /dev/null
0 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/database-reports/noactionusertalks.py > /dev/null
# MISCELLANEOUS
30 4 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/tswiki/wikiassignments.py > /dev/null
45 4 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/editcount.py > /dev/null
45 5 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/boteditcount.py > /dev/null
0 5 * * 1 PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/long-feats.py > /dev/null
0 5 * * 1 PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/length-gas.py > /dev/null
0 5 14,28 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/wikiprojvideo.py > /dev/null
0 5 1 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/wikiprojessaycat.py > /dev/null
0 2 10 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/wikiprojstubs.py > /dev/null
0 0,6,12,18 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/yanker.py > /dev/null
# */30 * * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/unwatched-bios-count-generator.py > /dev/null
50 14 * * * PYTHONPATH=$HOME/scripts nice -n 19 python $HOME/scripts/misc/page-creators.py
30 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/articlecount.py > /dev/null
30 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/misc/revdelactions.py > /dev/null
0 5 * * 1 PYTHONPATH=$HOME/scripts python $HOME/scripts/arwiki/nointerwikicats.py > /dev/null
# IRC BOTS
#0,5,10,15,20,25,30,35,40,45,50,55 * * * * cronsub -sl snirk $HOME/scripts/irc/snirk.py
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /bin/bash -c "/opt/local/bin/phoenix $HOME/scripts/irc/phoenix-snirk python $HOME/scripts/irc/snirk.py" > /dev/null
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /bin/bash -c "/opt/local/bin/phoenix $HOME/scripts/irc/phoenix-reba python $HOME/scripts/irc/reba.py" > /dev/null
# WIKI BOTS
10 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/biobot/biobot.py > /dev/null
8 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/biobot/newbios.py > /dev/null
45 1 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/biobot/compunrefbiosnewest.py > /dev/null
45 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/biobot/compunrefbiosoldest.py > /dev/null
0 3 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/biobot/possunsourcedbios.py > /dev/null
# 0 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/strategy/annoyer.py > /dev/null
0,5,10,15,20,25,30,35,40,45,50,55 * * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/deliverybot/deliverybot-2.py
0,5,10,15,20,25,30,35,40,45,50,55 * * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/deliverybot/deliverybot-3.py
# COMMONS!
0 0 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/indefips.py > /dev/null
5 0 * * 2 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/rangeblocks.py > /dev/null
0 12 8 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/excessiveips.py > /dev/null
5 12 8 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/excessiveusers.py > /dev/null
0 6 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/selfcatcats.py > /dev/null
10 10 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/templatelessfilepages.py > /dev/null
20 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/filelessfilepages.py > /dev/null
0 18 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/blankpages.py > /dev/null
0 18 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/longpages.py > /dev/null
0 6 * * 1,5 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/orphanedtalks.py > /dev/null
0 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/ownerlessuserpages.py > /dev/null
10 18 * * 5 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/shortpages.py > /dev/null
30 23 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/brokenredirects.py > /dev/null
30 12 * * 6 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/redreds.py > /dev/null
15 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/nscounts.py > /dev/null
0 5 28 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/mostrevisions.py > /dev/null
20 0 * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/logactions.py > /dev/null
0 15 8,22 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/mosttransclusions.py > /dev/null
45 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/blankanontalks.py > /dev/null
0 15 6,20 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/blockeduserrights.py > /dev/null
0 15 6,20 * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/inactiveuserrights.py > /dev/null
0 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/noactionuserpages.py > /dev/null
0 15 * * 3 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/noactionusertalks.py > /dev/null
30 * * * * PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/nara-cat.py > /dev/null
0 22 * * 4 PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/userprefs.py > /dev/null
40 15 * * * sql commonswiki_p < $HOME/queries/ns/ns_6_no_redirects.sql > /mnt/user-store/mzmcbride/commonswiki_p-ns-6.txt; PYTHONPATH=$HOME/scripts python $HOME/scripts/commons/database-reports/dupefilenames.py > /dev/null
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.