ویکیپدیا:درخواستهای ربات/ربات دریافت تلفظ
این کاربر یک ربات است | |
---|---|
وظیفه(ها) | دریافت الفبای بینالمللی آوانگاری و ترجمه آنها به حروف فارسی (آوانگاری عنوانهای انگلیسی) |
موافق محرومیت؟ | خیر |
موافق خاموششدن اضطراری؟ | بله |
اجازهنامه | CC-BY-SA 3.0 |
تست شده؟ | بله |
هماکنون این کد به صورت خودکار هر از ۱۵ دقیقه درخواستهای موجود در وپ:درخواست آوانگاری را بررسی میکند.
این ربات تلفط لغتها را در صورت موجود بودن از وبگاه dictionary.com دریافت میکند در صورت نبودن الگو:IPA را در صورتی که در مقاله انگلیسی موجود باشد را دریافت میکند و در یک فایل متنی به نام result.txt به صورت جدول ذخیره مینماید.
برای اجرای این کد نیاز هست که کتابخانه mechanize نیز نصب گردد.
نصب mechanize ویرایش
قبل از اجرا باید بستهٔ mechanize را از اینجا نصب کنید.
- نصب mechanize بر روی تول سرور
تولسرور به شما اجازه نصب هیچ نرمافزاری را نمیدهد و تنها روش نصب این کتابخانه به شرح زیر است.
- در ابتدا mechanize را از اینجا دانلود کنید.
- بعد از دانلود، زیپ بسته را باز کنید و پوشه mechanize (درون پوشه mechanize-0.2.5 قرار دارد) را به کمک winscp یا نرمافزارهای مشابه در پوشه pywikipedia خود در تول سرور کپی کنید.
- کد پایین (کد دریافت تلفظ ) را در پوشه pywikipedia خود در تول سرور قرار دهید.
- نصب mechanize در لینوکس
برای سیستمهای لینوکس به کمک easy_install mechanize قابل نصب است.
- نصب mechanize در ویندوز
نصب این کتابخانه در ویندوز به چند روش می توان انجام داد، که یکی از آنها به شرح زیر است. مراحل زیر را انجام دهید
- در ابتدا mechanize را از اینجا دانلود کنید.
- بعد از دانلود، زیپ بسته را باز کنید و آن را در پوشه پایتون (مثلا C:\Python27) کپی کنید.
- در برنامهٔ cmd ویندوز، با نوشتن دستور زیر به آدرس پوشهٔ mechanize که الان در پوشه پایتون هست بروید (مثلا C:\Python27\mechanize-0.2.5)
- کد پایین (کد دریافت تلفظ) را در پوشه pywikipedia قرار دهید.
cd C:\Python27\mechanize-0.2.5
و دستور setup.py install را بنویسید حال این کتابخانه بر روی پایتون شما نصب هست.
روش کار ویرایش
برای استفاده از ربات صفحاتی که احتمال میدهید این الگو را داشته باشند را در یک فایل متنی به صورت زیر ذخیره نمایید:
[[مثال۱]] [[مثال۲]] [[مثال۳]] . . .
و دستور زیر را اجرا نمائید
python ava.py -file:example.txt
برای دریافت الگو از یک صفحهٔ مشخص دستور زیر را وارد کنید
python ava.py -page:"pagename"
توجه:این ربات تمام آرگومانهای pagegenerators.py را به عنوان ورودی قبول میکند.
کد ویرایش
<syntaxhighlight lang="python">
- !/usr/bin/python
- -*- coding: utf-8 -*-
- Reza (User:reza1615)
- Ariobarzan (User:Ariobarzan) LINGUISTIC PART
- Distributed under the terms of the CC-BY-SA 3.0 .
- -*- coding: utf-8 -*-
import wikipedia,pagegenerators,sys import mechanize,time,codecs,cookielib,re savepage=u'result.txt' resultdata=u'\n' wikipedia.config.put_throttle = 0 wikipedia.put_throttle.setDelay()
enSite=wikipedia.getSite('en') def farsi(texts):
texts=texts.replace(u"ˈ",u"").replace(u"",u"").replace(u"",u"").replace(u"ˌ",u"").replace(u" ",u" ").strip() result_part,notpas=u' ',False for text_part in texts.split(u' '): farsis=False fachar=u'ضصثقفغعهخحجچشسیبلاتنمکگظطزرذدپوژآ۰۱۲۳۴۵۶۷۸۹='+u'0123456789' #--------------------------for passing persian links!---------------------- for i in fachar: if text_part.find(i)!=-1: wikipedia.output(text_part) farsis=True break
if text_part.find(u'[')!=-1 and text_part.find(u']')!=-1 : text_part=text_part.replace(u'[',u).replace(u']',u).strip() braket=True else: braket=False text_part=text_part.replace(u'ˈ',u).replace(u"",u"").replace(u"",u"").replace(u"ˌ",u"").lower().strip() first_part={u'ɜ':u'ا',u'sʌ':u'سا',u'sɜ':u'س',u'si':u'سی',u'sə':u'س',u'seɪ':u'سی',u'sɔ':u'سو',u'sʊ':u'سو',u'sɪ':u'سی',u'sɒ':u'س',u'saɪ':u'سی',u'se':u'س',u'sa':u'س',u'u':u'او',u'sa':u'س',u'so':u'سو',u'su':u'سو',u'se':u'س',u'o':u'او',u'yu':u'ایو',u'eɪ':u'ای',u'ɛə':u'ای',u'aɪ':u'آی',u'oʊ':u'اوو',u'əu':u'او',u'ɔɪ':u'او',u'ɑr':u'آر',u'ɒr':u'آر',u'ær':u'ار',u'aɪər':u'آیر',u'ɪ':u'ای', u'aʊər':u'آور',u'ɛr':u'ار',u'ɪər':u'ایر',u'ɔər':u'اور',u'ʊər':u'اور',u'jʊər':u'ایور',u'ɜr':u'ار',u'dʒ':u'ج',u'ŋɡ':u'نگ',u'tʃ':u'چ', u'hw':u'و',u'ɑ':u'آ',u'ɑː':u'آ',u'ɔː':u'او',u'iː':u'ای',u'i':u'ای',u'ɒ':u'آ',u'uː':u'او',u'ʊ':u'او',u'ʌ':u'آ',u'ɛ':u'ا',u'æ':u'ا',u'ə':u'ا', u'e':u'ا',u'b':u'ب',u'd':u'د',u'ð':u'د',u'p':u'پ',u'r':u'ر',u's':u'اس',u'k':u'ک',u'ɡ':u'گ',u'l':u'ل',u'h':u'ه',u'ʃ':u'ش',u'f':u'ف', u'm':u'م',u'n':u'ن',u'ŋ':u'نگ',u'j':u'ج',u'θ':u'ت',u't':u'ت',u'v':u'و',u'w':u'و',u'z':u'ز',u'ʒ':u'ژ',u'x':u'کس',u'iə':u'ای',u'ɔ':u'ا', u'ü':u'او',u'ö':u'او'} second_part={u'u':u'و',u'ɛ':u,u'yu':u'یو',u'eɪ':u'ی',u'ɛə':u'ی',u'aɪ':u'ای',u'oʊ':u'وو',u'əu':u'و',u'ɔɪ':u'وی',u'ɑr':u'ار',u'ɒr':u'ار',u'ær':u'ر',u'aɪər':u'ایر',u'aʊər':u'اور', u'ɛr':u'ر',u'ɪər':u'یر',u'ɔər':u'ور',u'ʊər':u'ور',u'jʊər':u'یور',u'ɑː':u'ا',u'ɔː':u'و',u'iː':u'ی',u'i':u'ی',u'ɒ':u'ا',u'uː':u'و', u'ʊ':u'و',u'ʌ':u'ا',u'iə':u'یا',u'ɑ':u'ا'} last_part={u'æ':u'ا',u'o':u'و',u'ə':u'ا',u'ɔ':u'و'} #---mix--- #--------2-3 place----
first_part_multi=[u'sʌ',u'sɜ',u'si',u'sə',u'seɪ',u'sɔ',u'sʊ',u'sɪ',u'sɒ',u'saɪ',u'se',u'sa',u'sa',u'se',u'su',u'so',u'yu',u'eɪ',u'ɛə',u'aɪ',u'oʊ',u'əu',u'ɔɪ',u'ɑr',u'ɒr',u'ær',u'aɪər',u'aʊər',u'ɛr',u'ɪər',u'ɔər',u'ʊər',u'jʊər',u'iə'] multi=[u'cy',u'ci',u'ce',u'ɔɪ',u'qu',u'yu',u'ŋk',u'ŋg',u'ʰw',u'ɜr',u'dʒ',u'ŋɡ',u'tʃ',u'hw',u'iə',u'ca',u'rr',u'ch',u'sh',u'oo',u'aa',u'tt',u'ck',u'kh',u'zh',u'll',u'ss',u'mm',u'nn',u'pp'] rep_multi={u'cy':u'سی',u'ci':u'سی',u'ce':u'س',u'ɔɪ':u'وی',u'qu':u'کو',u'yu':u'یو',u'ŋk':u'نک',u'ŋg':u'نگ',u'ɜr':u'ر',u'dʒ':u'ج',u'ŋɡ':u'نگ',u'tʃ':u'چ',u'hw':u'و',u'iə':u'ی',u'ʰw':u'و',u'ca':u'ک',u'rr':u'ر',u'ch':u'چ',u'sh':u'ش',u'oo':u'و',u'aa':u'آ',u'tt':u'ت',u'ck':u'ک',u'kh':u'خ',u'zh':u'ژ',u'll':u'ل',u'ss':u'س',u'mm':u'م',u'nn':u'ن',u'pp':u'پ',u'ph':u'ف'} #wikipedia.output(str(text.find(u'iə'))) #wikipedia.output(text_part) for i in first_part_multi: if text_part.find(i)==0 and (i in first_part): text_part=text_part.replace(i.lower(),first_part[i],1) if text_part.find(i)>len(i)-1 and (i in second_part): text_part=text_part.replace(i.lower(),second_part[i]).replace(i,second_part[i]).replace(i.lower(),second_part[i.lower()])
#---------1 place---- for i in multi: if text_part.find(i)>-1: text_part=text_part.replace(i.lower(),rep_multi[i]) #---mono------------- first_part_mono=[u'ɜ',u'hw',u'ɑː',u'ɔː',u'ɔ',u'iː',u'i',u'ɒ',u'uː',u'ʊ',u'ʌ',u'ɪ',u'ɑ',u'ɛ',u'ɛ',u'æ',u'ə',u'e',u's',u'ü',u'ö'] mono=[u'q',u'c',u'y',u'u',u'g',u'o',u'ɛ',u'a',u'æ',u'ə',u'e',u'b',u'd',u'ð',u'p',u'r',u's',u'k',u'ɡ',u'l',u'h',u'ʃ',u'f',u'm',u'n',u'ŋ',u'j', u'θ',u't',u'v',u'w',u'z',u'ʒ',u'x',u'ɪ',u'ɔ',u'ɑ',u'ó',u'ö',u'ø',u'̃',u'ã',u'é',u'ß',u'ñ',u'ü'] rep_mono={u'q':u'ک',u'c':u'ک',u'u':u'و',u'g':u'گ',u'æ':u,u'ə':u,u'e':u,u'o':u'و',u'b':u'ب',u'd':u'د',u'ð':u'د',u'ɪ':u'ی',u'a':u'ا', u'p':u'پ',u'r':u'ر',u's':u'س',u'k':u'ک',u'ɡ':u'گ',u'l':u'ل',u'h':u'ه',u'ʃ':u'ش',u'f':u'ف', u'm':u'م',u'n':u'ن',u'ŋ':u'نگ',u'j':u'ج',u'θ':u'ت',u't':u'ت',u'v':u'و',u'w':u'و',u'z':u'ز',u'ʒ':u'ژ',u'x':u'کس',u'ɔ':u,u'y':u'ی', u'ó':u'و',u'ö':u'و',u'ø':u'و',u'̃':u,u'ã':u'آ',u'é':u,u'ß':u'س',u'ñ':u'نیا',u'ü':u'و'} last_part_mono=[u'æ',u'o',u'ə',u'ɔ'] if not text_part.strip(): continue for i in last_part_mono: if text_part[-1]==i : text_part=text_part[:-1]+last_part[i] for i in first_part_mono: if text_part.find(i)==0: text_part=text_part.replace(i.lower(),first_part[i],1) if (i or i.lower()) in rep_mono: text_part=text_part.replace(i.lower(),rep_mono[i]).replace(i,rep_mono[i]).replace(i.lower(),rep_mono[i.lower()]) if (i or i.lower()) in second_part: text_part=text_part.replace(i.lower(),second_part[i]).replace(i,second_part[i]).replace(i,second_part[i.lower()])
#----------------1 place---- for i in mono: if text_part.find(i)>-1: if (i or i.lower()) in rep_mono: text_part=text_part.replace(i,rep_mono[i]).replace(i.lower(),rep_mono[i.lower()]).replace(i.lower(),rep_mono[i]) else: if (i or i.lower()) in second_part: text_part=text_part.replace(i.lower(),second_part[i]).replace(i,second_part[i]).replace(i.lower(),second_part[i.lower()]) if (i or i.lower()) in first_part: text_part=text_part.replace(i.lower(),first_part[i]).replace(i,first_part[i]).replace(i.lower(),first_part[i.lower()])
if braket: if farsis:# for farsi cases text_part=text_part else: text_part=u'['+text_part+u']' text_part=farsinum(text_part) result_part+=text_part+u' ' text_part=u return result_part.strip()
def farsinum(text):
text=text.replace(u'0',u'۰').replace(u'1',u'۱').replace(u'2',u'۲').replace(u'3',u'۳').replace(u'4',u'۴') text=text.replace(u'5',u'۵').replace(u'6',u'۶').replace(u'7',u'۷').replace(u'8',u'۸').replace(u'9',u'۹').replace(u',',u'،') return text
def en_wiki (enpage):
result=u enSite=wikipedia.getSite('en') enpage=wikipedia.Page(enSite,enpage.title()) try: text=enpage.get() wikipedia.output('Checking \03{lightyellow} %s \03{default} in en.wikipedia ....' %enpage.title()) except wikipedia.IsRedirectPage: pageRedirect = enpage.getRedirectTarget() text = pageRedirect.get() except: return False text=text.replace('{{ ','{{').replace('{{template:','{{').replace('{{Template:','{{') if u'{{IPAc-en' in text: result=text.split(u'{{IPAc-en')[1].split('}}')[0] if u'{{ipac-en' in text: result=text.split(u'{{ipac-en')[1].split('}}')[0] if result: result=result.replace(u'|',u).replace(u'icon',u).strip() wikipedia.output(u'\03{lightblue}'+result+u'\03{default}') return result return False
def dictionary(entext):
fachar=u'ضصثقفغعهخحجچشسیبلاتنمکگظطزرذدپوژآ۰۱۲۳۴۵۶۷۸۹='+u'0123456789' #--------------------------for passing persian links!---------------------- for i in fachar: if entext.find(i)!=-1: wikipedia.output(entext) return False #-------------------------- time.sleep(2)# sleep to have less errors wikipedia.output('Requesting \03{lightyellow} %s \03{default} on http://dictionary.com ....' %entext) #if fachar: try: br = mechanize.Browser() cj = cookielib.LWPCookieJar() br.set_cookiejar(cj) br.set_handle_equiv(True) br.set_handle_redirect(True) br.set_handle_referer(True) br.set_handle_robots(False) br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')] br.open('http://dictionary.reference.com') br.select_form(nr=0) br['q']=entext br.submit() with codecs.open('result.txt',mode = 'w',encoding = 'utf8') as f: f.write(unicode(str(br.response().read()),'utf-8')) result=unicode(str(br.response().read()),'utf-8').replace(u'',u).replace(u'',u).replace(u'',u) result_api=result.split(u'",u"").replace(u"<",u"").replace(u">",u"").split(u'span class')[0].split(u';')[0].split(u',')[0].strip() result_api=result_api.replace(u"img class='luna-Img' border='0' src='http://static.sfdict.com/dictstatic/dictionary/graphics/luna/thinsp.png'",u"") result_api=result_api.replace(u"alt=",u"").replace(u"bɜr /",u"").replace(u" /",u"").replace(u" /",u"") prons=[result_api] #wikipedia.output(result.split(u' ",u"").replace(u"
def run(preloadingGen,msg):
result=[] ennum=u'0123456789' count,counter=0,0 for i in preloadingGen: count+=1 for fapage in preloadingGen: if fapage.strip(): counter+=1 try: fapage_t=fapage.replace(u'',u'').replace(u'',u).strip() except: fapage_t=fapage.title() if fapage_t.find(u'<')!=-1 and fapage_t.find(u'>')!=-1: continue notpas,numnotpas=False,True #--------------------------for passing number links!---------------------- for i in ennum: if fapage_t.find(i)!=-1: numnotpas=False break if fapage_t.find(u'=')!=-1: result.append(u"|-\n|@"+fapage_t.replace(u'=',u)+u"|| || ||") continue wikipedia.output(u'---\03{lightblue}['+str(counter)+u'/'+str(count)+u']\03{default}-------------------------------------') #-----------------------cleaning ----- wikipedia.output(fapage_t) title=fapage_t.replace(u'',u)#remove ZWNJ title=title.replace(u' ',u' ').strip() objects_en=u':»«(){}?!؟,،;/–-$#@"' for i in objects_en: title=title.replace(i,u' '+i+u' ').replace(u' ',u' ').strip() #-----------------------check dictionary.com normal----- if title.find(u' ')==-1 and numnotpas: pron=dictionary(title) if pron: Farsi_r=farsi(u'||'.join(pron)) if u')' in fapage_t: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+u'||'+Farsi_r+u'||تلفظهای ستون ۳ کامل است!') else: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+u'||'.join(pron)+u'||'+Farsi_r+u'||تلفظهای ستون ۳ کامل است!') wikipedia.output(Farsi_r) continue else: Farsi_r=farsi(u'||'.join(title)) if u')' in fapage_t: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+u'||'+Farsi_r+u'||') else: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+u'||'.join(pron)+u'||'+Farsi_r+u'||') wikipedia.output(Farsi_r) continue #------------------------------check dictionary.com with space---- naghes=False pron_fa=u' ' title=title.replace(u' ',u' ').strip() for i in title.split(u' '): i=i.strip() if not i in objects_en: pron=dictionary(i.strip()) if pron: try: pron_fa+=pron+u' ' except: pron_fa+=pron[0]+u' ' else: pron_fa+=u'['+i+u'] ' naghes=True else: pron_fa+=i.strip() if pron_fa.strip(): translationtofa=farsi(pron_fa) back_none_space=u'!؟?,،;:؛' translationtofa=translationtofa.replace(u'« ',u'«').replace(u' »',u'»').replace(u'{ ',u'{').replace(u' }',u'}') translationtofa=translationtofa.replace(u'( ',u'(').replace(u' )',u')').replace(u',',u'،').replace(u'?',u'؟').replace(u';',u'؛') translationtofa=translationtofa.replace(u'(',u' (').replace(u')',u') ') for i in back_none_space: translationtofa=translationtofa.replace(u' ',u' ').replace(u' '+i,i).replace(i,i+u' ').replace(u' ',u' ').strip() wikipedia.output(translationtofa) if u'(' in fapage_t: if fapage_t.strip()==translationtofa.strip(): result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'|| ▬ ||'+translationtofa+u'||▬ بدون تغییر!') continue if not naghes: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+pron_fa+u'||'+translationtofa+u'||تلفظهای ستون ۳ کامل است!') continue else: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+pron_fa+u'||'+translationtofa+u'||') continue else: if fapage_t.strip()==translationtofa.strip(): result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'|| ▬ ||'+translationtofa+u'||▬ بدون تغییر!') continue if not naghes: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+pron_fa+u'||'+translationtofa+u'||تلفظهای ستون ۳ کامل است!') continue else: result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+pron_fa+u'||'+translationtofa+u'||') continue #------------------------------enwiki------------------------------- pron=en_wiki(fapage_t) if pron: Frais_r=farsi(pron) result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+u'||'+pron+u'||'+Frais_r+u'||') wikipedia.output(Frais_r) continue #------------------------------empty result------------------- result.append(u'|-\n|'+farsinum(str(counter))+u'||'+fapage_t+'|| || ||') return result
def main():
summary_commandline,gen,wikipage = None,None,False exceptions,PageTitles,namespaces = [],[],[] autoText,autoTitle = False,False genFactory = pagegenerators.GeneratorFactory() wikipedia.setAction( msg ) #pron=dictionary('iran') for arg in wikipedia.handleArgs(): if arg== '-autoreq': wikipage=u'وپ:درخواست آوانگاری' else: generator = genFactory.handleArg(arg) if generator: gen = generator if not gen: wikipage=u'وپ:درخواست آوانگاری' if wikipage: faSite=wikipedia.getSite('fa') fapage=wikipedia.Page(faSite,wikipage) a=1 if a: #try: try: text=fapage.get() except wikipedia.IsRedirectPage: fapage2 = fapage.getRedirectTarget() try: text=fapage2.get() except: wikipedia.output(u"requested page didn't find!") wikipedia.stopme() sys.exit() except: wikipedia.output(u"requested page didn't find!") wikipedia.stopme() sys.exit() last_user=fapage.getVersionHistory()[0][2] if last_user.lower().find(u'bot')!=-1: wikipedia.stopme() sys.exit() linkes = re.findall(ur'\[\[.*?\]\]',text, re.S) fapage.put(u'ربات در حال بررسی درخواست '+last_user+u' و آوانگاری عنوانها بر پایهٔ عنوانهای آوانگاری شده در ویکیپدیای فارسی است که حدود '+str(len(linkes)/۱۲)+u' دقیقه برای بررسی این درخواست زمان لازم است. لطفاً صبر نمائید و تا تمام شدن کار ربات درخواست جدید ارائه ندهید.Xqbot (بحث) ۲۲ آوریل ۲۰۲۰، ساعت ۱۶:۴۴ (UTC)\n',u'ربات:در حال آوانگاری') if linkes: result=run(linkes,msg) result=u'لطفاً آوانگاریهای موجود در ستون چهارم را بر اساس ستون ۳ و ۲ بازبینی نمائید و موارد درست شده را با {{شد}} (در ستون ۵) مشخص نمائید.\n{| class="wikitable plainlinks"\n!ردیف!!سرواژه انگلیسی!!تلفظ بر گرفته از دیکشنری (ستون ۳)!!آوانگاری پیشنهادی ربات به فارسی!!وضعیت بازبینی'+u'\n'+u'\n'.join(result)+u'\n|}' result=result.replace(u'[=',u'=').replace(u'=]',u'=').replace(u'[<',u'<').replace(u'>]',u'>') requstpage=wikipedia.Page(faSite,u'user:'+last_user+u'/درخواست آوانگاری') requstpage.put(result,u'ربات:نتیجه درخواست آوانگاری') requstpage=wikipedia.Page(faSite,u'بحث کاربر:'+last_user) try: usertalktext=requstpage.get() except: usertalktext=u'\n' requstpage.put(usertalktext+u'\n== آوانگاری ==
ربات: درخواست شما در صفحهٔ درخواست آوانگاری بررسی و آوانگاری شد و در زیرصفجهٔ کاربر:درخواستهای ربات/ربات دریافت تلفظ/آوانگاری موفق و کاربر:درخواستهای ربات/ربات دریافت تلفظ/آوانگاری ناموفق ذخیره گردید لطفاً پس از بازبینی موارد موفق برای بهبود نتایج بعدی ربات آنهایی را که در کاربر:درخواستهای ربات/ربات دریافت تلفظ/لغتنامه مورد نیاز موجودند را پس از آوانگاری در صفحهٔ بحث درخواست آوانگاری قرار دهید تا ربات برای دفعات بعد از ترجمههای شما استفاده کند.Xqbot (بحث) ۲۲ آوریل ۲۰۲۰، ساعت ۱۶:۴۴ (UTC)\n',u'ربات:نتیجه درخواست آوانگاری')
fapage.put(u'ویکیپدیا:درخواستهای ربات/ربات دریافت تلفظ/سردر/n',u'ربات:اتمام آوانگاری و آماده برای درخواست جدید') #except: #wikipedia.output(u"requested page didn't find!") wikipedia.stopme() sys.exit() if PageTitles: pages = [wikipedia.Page(enSite,PageTitle) for PageTitle in PageTitles] gen = iter( pages ) if not gen: wikipedia.stopme() if namespaces != []: gen = pagegenerators.NamespaceFilterPageGenerator( gen,namespaces ) preloadingGen = pagegenerators.PreloadingGenerator( gen,pageNumber = 60 ) result=run(preloadingGen,msg) result=u'در مورد نتایج کار ربات به نکات زیر توجه نمائید.
- نکته۱: توجه داشته باشید این ربات فقط برای زبان انگلیسی طراحی شدهاست.
- نکته۲: کار ربات خالی از اشکال نیست (به خصوص موادی که الگو:آوانگاری ناقص در ستون جلوی واژه مشاهده میشود)حتما نتیجه کار ربات را بازبینی نمائید و بدون بازبینی از آنها در ویکیپدیا استفاده ننمائید!
- نکته۳: آوانگاریهایی که در میان [] قرار دارند ربات نتوانستهاست الفبای آوانگاری بینالمللی مناسب برای آن بیابد و احتمال اشتباه در آوانگاری آنها بیشتر است.
\n'+u'{| class="wikitable plainlinks"\n!سرواژه انگلیسی!!تلفظ!!آوانگاری فارسی!!وضعیت آوانگاری\n'+u'\n'.join(result)+u'\n|}'
result=result.replace(u'[=',u'=').replace(u'=]',u'=').replace(u'[<',u'<').replace(u'>]',u'>') with codecs.open(savepage,mode = 'w',encoding = 'utf8') as f: f.write(result)
if __name__ == "__main__":
testpass=True msg=u' ' main()