এটি করার একটি উপায় হ'ল নিবন্ধের ইতিহাসটি রফতানি করা এবং তারপরে স্থানীয় সরঞ্জাম ব্যবহার করে সংশোধনগুলি প্রক্রিয়া করা 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'])
তারপরে এক্সপোর্ট করা ইতিহাস এক্সএমএল ডাউনলোড করুন, এর মতো কিছু দিয়ে পার্স করুন lxml.etree
এবং সংশোধনগুলি (এক্সপাথ //revision
) এর উপর লুপ করুন । প্রতিটি পুনর্বিবেচনার জন্য, কোনও ফাইলটিতে পাঠ্য লিখুন (বলুন article.wiki
), লেখকটি পড়ুন এবং চালান
subprocess.check_call(['git', 'commit', '-a', '-m', 'blah', '--author=' + str(author)])
সমস্ত সংশোধনী রেপোতে যুক্ত হওয়ার পরে, চালান git blame article.wiki
, প্রতিটি লাইনের লেখককে দেখতে ।
দ্রষ্টব্য: Special:Export
রফতানি হওয়া সংখ্যার সংখ্যাকে সীমাবদ্ধ করতে পারে, সুতরাং দীর্ঘ ইতিহাস সহ পৃষ্ঠাগুলিতে আপনাকে একাধিকবার এক্সএমএল আনতে হতে পারে।