ویکی‌پدیا:درخواست‌های ربات/ربات مقالات دارای ایمیل، نام کاربری، کد اچ‌تی‌ام‌ال

از ویکی‌پدیا، دانشنامهٔ آزاد

YourBotAcount را با نام کاربری حسابتان در لبز جایگزین کنید.

توجه

این ربات برای شروع کار فایل دامپ با حجم حدودی ۵۰۰-۶۰۰ مگابایت دانلود می‌کند.

# -*- coding: utf-8 -*-
#
#http://dumps.wikimedia.your.org/fawiki/20140802/fawiki-20140802-pages-meta-current.xml.bz2
import wikipedia, xmlreader, codecs, re
import os

TheDay='latest'
bot_address="/data/project/YourBotAcount/"
urllinkmain='http://dumps.wikimedia.your.org/fawiki/%s/fawiki-%s-pages-meta-current.xml.bz2' %(TheDay,TheDay)
print urllinkmain
try:
    os.system("wget -O "+bot_address+"fawiki-%s-pages-meta-current.xml.bz2" %(TheDay)+' '+urllinkmain)
    dump = xmlreader.XmlDump(bot_address+"fawiki-%s-pages-meta-current.xml.bz2" %(TheDay))
except:
        pass
f=codecs.open(bot_address+"zz_html_links.txt","w","utf-8")
f.write("")
f.close()
f=codecs.open(bot_address+"zz_user_links.txt","w","utf-8")
f.write("")
f.close()
f=codecs.open(bot_address+"zz_email_links.txt","w","utf-8")
f.write("")
f.close()
for entry in dump.new_parse():
        if entry.ns in ['0']:
            fa_text=entry.text
            if u'</tr>' in fa_text or u'</td>' in fa_text or 'class="infobox geography vcard"' in fa_text:
                f=codecs.open(bot_address+"zz_html_links.txt","a","utf-8")
                f.write(u"[[%s]]\n" % entry.title)
                f.close()
            if u'[[کاربر:' in fa_text or u'[[user:' in fa_text or '[[User:' in fa_text:
                f=codecs.open(bot_address+"zz_user_links.txt","a","utf-8")
                f.write(u"[[%s]]\n" % entry.title)
                f.close()
            if u'@gmail.' in fa_text or u'@Gmail.' in fa_text or '@yahoo.' in fa_text or '@Yahoo.' in fa_text:
                f=codecs.open(bot_address+"zz_email_links.txt","a","utf-8")
                f.write(u"[[%s]]\n" % entry.title)
                f.close()
os.system("rm "+bot_address+"fawiki-%s-pages-meta-current.xml.bz2" %(TheDay))