Salah satu cara untuk melakukannya adalah dengan mengekspor sejarah artikel, dan kemudian memproses revisi menggunakan alat lokal seperti git blame. Ini bisa dilakukan dengan menggunakan skrip.
Untuk mengekspor riwayat artikel, menggunakanSpecial:Export , khususnya: https://en.wikipedia.org/w/index.php?title=Special:Export&history=1&action=submit&pages=Blinkenlights.
Untuk menghasilkan kesalahan, pertama tambahkan revisi ke repositori git sementara (diperlihatkan dalam Python 3):
import tempfile
import subprocess
with tempfile.TemporaryDirectory() as repo:
os.chdir(repo.name)
subprocess.check_call(['git', 'init'])
Kemudian unduh XML riwayat yang diekspor, parsing dengan sesuatu seperti lxml.etree, dan lewati revisi (xpath //revision). Untuk setiap revisi, tulis teks ke file (katakanlah article.wiki), baca penulisnya, dan jalankan
subprocess.check_call(['git', 'commit', '-a', '-m', 'blah', '--author=' + str(author)])
Setelah semua revisi ditambahkan ke repo, jalankan git blame article.wikiuntuk melihat pembuat setiap baris.
Catatan: Special:Exportmungkin membatasi jumlah revisi yang diekspor, jadi di halaman dengan riwayat panjang Anda mungkin harus mengambil XML beberapa kali.