സഹായം:ഉപകരണങ്ങൾ/wiktGet.py
വിക്കിനിഘണ്ടു സംരംഭത്തിൽ നിന്ന്
< സഹായം:ഉപകരണങ്ങൾ(ഉപയോക്താവ്:Jacob.jose/wiktGet.py എന്ന താളിൽ നിന്നും തിരിച്ചുവിട്ടതു പ്രകാരം)
# wiktGet.py # # Crude, unorganized version # import urllib2 import re import wikipedia def getWordsFromForeignWikiCategory(): headers = {} headers['User-Agent'] = 'Bot/Jacob.jose' request = urllib2.Request('http://en.wiktionary.org/w/index.php?title=Special%3AAllpages&from=%E3%82%A2%E3%83%AB%E3%83%90%E3%82%A4%E3%83%88&namespace=0', '', headers) response = urllib2.urlopen(request) data = response.read() inFileHandle = open('./url.txt', 'w') inFileHandle.write(data) """return data inFileHandle = open('./url.txt', 'r') data = inFileHandle.read()""" wordSearchR = re.compile(r'<li><a href=\"([^\"]+)\"[\s]*title=\"([^\"]+)\"') return data, wordSearchR def getWordsFromForeignWikiAllpages(): headers = {} headers['User-Agent'] = 'Bot/Jacob.jose' request = urllib2.Request('http://en.wiktionary.org/w/index.php?title=Special%3AAllpages&from=%E3%82%A2%E3%83%AB%E3%83%90%E3%82%A4%E3%83%88&namespace=0', '', headers) response = urllib2.urlopen(request) data = response.read() inFileHandle = open('./url.txt', 'w') inFileHandle.write(data) """inFileHandle = open('./url.txt', 'r') data = inFileHandle.read()""" wordSearchR = re.compile(r'<td><a href=\"([^\"]+)\"[\s]*title=\"([^\"]+)\"') return data, wordSearchR def getPageContentsFromForeignWiki(wordPercentageEncoded): wordPercentageEncoded = wordPercentageEncoded.replace( "/wiki/", "") page = wikipedia.Page(wikipedia.getSite('en', 'wiktionary'), wordPercentageEncoded).get() #print repr(page) return page def mlAutoTranslate(page): page = page.encode('utf-8') page = re.sub( "=\s*Japanese\s*=", "=ജാപ്പനീസ്=", page) page = re.sub( "=\s*Noun\s*=", "=നാമം=", page) page = page.replace( "Katakana character", "കട്ടക്കാനാ പദം") page = page.replace( "Related terms", "ബന്ധപ്പെട്ട പദങ്ങൾ") page = page.replace( "Category:", "വിഭാഗം:") page = re.sub( "=\s*Adjective\s*=", "=നാമവിശേഷണം=", page) page = re.sub( "=\s*Adverb\s*=", "=ക്രിയാവിശേഷണം=", page) page = page.replace( "Etymology", "പദത്തിന്റെ ഉദ്ഭവം") page = page.replace( "Derived terms", "ഈ പദത്തിൽനിന്നുദ്ഭവിച്ച പദങ്ങൾ") page = page.replace( "Synonyms", "പര്യായപദങ്ങൾ") page = page.replace( "Proper noun", "സംജ്ഞാനാമം") page = page.replace( "|proper noun", "|സംജ്ഞാനാമം") page = page.replace( "|proper", "|സംജ്ഞാനാമം") page = page.replace( "|noun", "|നാമം") page = page.replace( "See also", "ഇതും കാണുക") page = page.replace( "Pronunciation", "ഉച്ചാരണം") page = page.replace( "Alternative spellings", "മറ്റു സ്പെല്ലിംഗുകൾ") page = page.replace( "ja:Basic Elements", "ja:അടിസ്ഥാന കണങ്ങൾ") page = page.replace( "ja:Amino Acids", "ja:അമിനോ അമ്ലങ്ങൾ") page = page.replace( "ja:Makeup", "ja:അണിഞ്ഞൊരുങ്ങൽ") page = page.replace( "ja:Elephants", "ja:ആനകൾ") page = page.replace( "ja:English Derivative[s]*", "ja:ഇംഗ്ലീഷ് ഭാഷയിൽനിന്നു രൂപപ്പെട്ട പദങ്ങൾ") page = page.replace( "ja:Organic Chemistry", "ja:ഓർഗാനിക് രസതന്ത്രം") page = page.replace( "ja:Seas", "ja:സമുദ്രങ്ങൾ") page = page.replace( "ja:Oceans", "ഉച്ചാരണം") page = page.replace( "ja:Computer Science", "ja:കമ്പ്യൂട്ടർ ശാസ്ത്രം") page = page.replace( "ja:Fruits", "ja:കായ്കനികൾ") page = page.replace( "ja:Fungus", "ja:കുമിളുകൾ") page = page.replace( "ja:Fungi", "ja:കുമിളുകൾ") page = page.replace( "ja:Plants", "ja:ചെടികൾ") page = page.replace( "ja:Biochemistry", "ja:ജൈവരസതന്ത്രം") page = page.replace( "ja:Biology", "ja:ജൈവശാസ്ത്രം") page = page.replace( "ja:Nationality", "ja:ദേശീയത") page = page.replace( "ja:Islands", "ja:ദ്വീപുകൾ") page = page.replace( "ja:Rivers", "ja:നദികൾ") page = page.replace( "ja:Vegetables", "ja:പച്ചക്കറികൾ") page = page.replace( "ja:Languages", "ja:ഭാഷകൾ") page = page.replace( "ja:Food", "ja:ഭക്ഷണം") page = page.replace( "ja:Continents", "ja:ഭൂഖണ്ഡങ്ങൾ") page = page.replace( "ja:Physics", "ja:ഭൗതികശാസ്ത്രം") page = page.replace( "ja:Sweets", "ja:മധുരപലഹാരങ്ങൾ") page = page.replace( "ja:Fish", "ja:മീനുകൾ") page = page.replace( "ja:Fishes", "ja:മീനുകൾ") page = page.replace( "ja:Chemical elements", "ja:മൂലകങ്ങൾ") page = page.replace( "ja:Microbiology", "ja:മൈക്രോബയോളജി") page = page.replace( "ja:Countries", "ja:രാജ്യങ്ങൾ") page = page.replace( "ja:Diseases", "ja:രോഗങ്ങൾ") page = page.replace( "ja:Alcohols", "ja:ലഹരിപാനീയങ്ങൾ") page = page.replace( "ja:Musical Instruments", "ja:വാദ്യോപകരണങ്ങൾ") page = page.replace( "ja:Vehicles", "ja:വൈദ്യശാസ്ത്രം") page = page.replace( "ja:Medicine", "ja:വൈദ്യശാസ്ത്രം") page = page.replace( "ja:Medical Science", "ja:വൈദ്യശാസ്ത്രം") page = page.replace( "ja:Mammals", "ja:സസ്തനികൾ") page = page.replace( "1000_Japanese_basic_words", "1000 അടിസ്ഥാന ജാപ്പനീസ് പദങ്ങൾ") page = re.sub( "Japanese [nN]ouns", "ജാപ്പനീസ് നാമങ്ങൾ", page) page = re.sub( "Japanese [Ll]anguage", "ജാപ്പനീസ് ഭാഷ", page) page = page.replace( "ja:Constellations", "ja:നക്ഷത്രസമൂഹങ്ങൾ") page = page.replace( "ja:Mollusks", "ja:ശ്ലേഷ്മോദരപ്രാണികൾ") return page def main(): wordListFileHandle = open('./words.txt','w') pagesFileHandle = open('./file.txt','w') i = 1 #data, wordSearchR = getWordsFromForeignWikiCategory() data, wordSearchR = getWordsFromForeignWikiAllpages() for wordPercentageEncoded,word in wordSearchR.findall(data): print str(i)+' : http://en.wiktionary.org'+wordPercentageEncoded i+=1 print >> wordListFileHandle, '*[['+word+']]' #page = getPageContentsFromForeignWiki(wordPercentageEncoded) page = getPageContentsFromForeignWiki(wordPercentageEncoded) page = mlAutoTranslate(page) print >> pagesFileHandle, '{{-start-}}<!--\'\'\''+word+'\'\'\'-->' #pagesFileHandle.write(page.encode('utf-8')) pagesFileHandle.write(page) print >> pagesFileHandle, '{{-stop-}}' if __name__ == "__main__": try: main() finally: print ""