Releasing a small tool to explore wikipedia users contributions

Last week, we had a Indic Wikisource Proofreadthon 2020 event. see here for full details

https://meta.wikimedia.org/wiki/Indic_Wikisource_Proofreadthon_2020

Though I did not participated in this event, (feels sad for this. Life is too messy nowadays), I thought to build a small tool to give report on any wikipedia user’s contribution on given wikisite for a given date range.

It may help to calculate, measure, decide on the contributions for such competitions.

Mediawiki has a good API to fetch user contribuions. https://www.mediawiki.org/wiki/API:Usercontribs

Get all edits by a user. https://www.mediawiki.org/wiki/Special:MyLanguage/API:Usercontribs

uclimit
The maximum number of contributions to return. Type: integer or max The value must be between 1 and 500.

ucstart
The start timestamp to return from. Type: timestamp

ucend
The end timestamp to return to. Type: timestamp

uccontinue
When more results are available, use this to continue.

ucdir
In which direction to enumerate:
newer – List oldest first. Note: ucstart has to be before ucend.
older – List newest first (default). Note: ucstart has to be later than ucend.

One of the following values: newer, older Default: older

The above details helped much.

For my wonder, there was a sample python code on the same page.

The code gave only 500 results. I wrote a loop to get the data batch by batch till all the data is received.

Published the tool here – https://github.com/tshrinivasan/wiki_user_contributions_report

How to run?

python3 get_user_contributions.py <language> <wikisite> <username> <start_date> <end_date>

This will give the data as a CSV file. Used a csv-to-html convertor utility to convert this to web page with all the data in sortable table.

Screenshot

For my wonder, my friend Dinesh Karthik, converted this as a nice web application with flask, dash and hosted in heroku.

https://wiki-user-contributions.herokuapp.com/

Source : https://github.com/Dineshkarthik/wiki-user-contributions

Thanks to Info-farmer for providing the idea, Bartosz Dziewoński on wikipedia mailing list for answering all my questions, Dinesh for making a web application quickly.

https://lists.wikimedia.org/mailman/listinfo/wikitech-l
is a good place to ask any tech questions regarding wikipedia.

Thanks to all wikisource contributors for the event and in general.

One thought on “Releasing a small tool to explore wikipedia users contributions

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s