Jump to content

Wikipedia:Database reports/Configuration

From Wikipedia, the free encyclopedia
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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