इसे करने का एक तरीका लेख के इतिहास को निर्यात करना है, और फिर स्थानीय उपकरण का उपयोग करके संशोधनों की प्रक्रिया करना है git blame। यह एक स्क्रिप्ट का उपयोग करके किया जा सकता है।
लेख के इतिहास को निर्यात करने के लिएSpecial:Export , विशेष रूप से उपयोग करेंhttps://en.wikipedia.org/w/index.php?title=Special:Export&history=1&action=submit&pages=Blinkenlights :।
दोष उत्पन्न करने के लिए, पहले संशोधन को एक अस्थायी गिट रिपॉजिटरी में जोड़ें (पायथन 3 में दिखाया गया है):
import tempfile
import subprocess
with tempfile.TemporaryDirectory() as repo:
os.chdir(repo.name)
subprocess.check_call(['git', 'init'])
फिर निर्यात किए गए इतिहास XML को डाउनलोड करें, इसे कुछ इस तरह से पार्स करें lxml.etree, और संशोधनों (xpath //revision) पर लूप करें । प्रत्येक संशोधन के लिए, एक फ़ाइल (कहना article.wiki) पर पाठ लिखें , लेखक को पढ़ें, और चलाएं
subprocess.check_call(['git', 'commit', '-a', '-m', 'blah', '--author=' + str(author)])
रेपो में सभी संशोधन जोड़े जाने के बाद, git blame article.wikiप्रत्येक पंक्ति के लेखक को देखने के लिए दौड़ें ।
नोट: Special:Exportनिर्यात किए गए संशोधनों की संख्या को प्रतिबंधित कर सकता है, इसलिए लंबे इतिहास वाले पृष्ठों में आपको कई बार XML प्राप्त करना पड़ सकता है।