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 participate 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 a 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 contributions.
https://www.mediawiki.org/wiki/API:Usercontribs
Get all edits by a user.
https://www.mediawiki.org/wiki/Special:MyLanguage/API:Usercontribs
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 converter
utility to convert this to a web page with all the data in a sortable
table.
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.
--
Regards,
T.Shrinivasan
My Life with GNU/Linux : http://goinggnu.wordpress.com
Free E-Magazine on Free Open Source Software in Tamil : http://kaniyam.com
Get Free Tamil Ebooks for Android, iOS, Kindle, Computer :
http://FreeTamilEbooks.com