#-*- coding: utf-8 -*- import csv, time, subprocess, re, pywikibot ##மறவாமல், மேலுள்ள view என்பதுள் 'Toggle Line Numbers'அழுத்துக. இடப்பக்கத்தின் வரிசையெண் தோன்றும். ##கீழுள்ளவற்றை நூலுக்கு நூல், மாற்ற வேண்டும் பக்கத்தொடக்கம் = 351 பக்கமுடிவு = 354 அட்டவணைப்பெயர் = ' அட்டவணை:வேண்டும் விடுதலை.pdf ' மின்னூலின்ஒற்றைப்படையில்இடவேண்டியவுரை = ' பாவலரேறு பெருஞ்சித்திரனார் ' மின்னூலின்இரட்டைப்படையில்இடவேண்டியவுரை = ' வேண்டும் விடுதலை ' ##உரலியின் பக்க எண்ணுக்கும், அச்சுபக்கத்தின் எண்ணுக்கும் உள்ள வேறுபாடு கழியும்எண் = 2 ## மேலடி தரவு நீக்கவேண்டாமெனில் கீழ்கண்ட இரு வரிகளில் மாற்றவும். ## 91, 126 என்ற வரியின் கடைசியில் .replace(தொபநடுப்பகுதிசில,'') என்று இருக்கும். அங்குள்ள புள்ளிக்கு முன்#குறியீடு இட்டு சேமிக்கவும். ##கீழுள்ளவற்றை மாற்ற வேண்டாம். எது மாறினாலும், நிரல் இயங்காது காத்திருப்புநொடிகள் = 60 அடிக்கோடுபுள்ளி = '.........................................' அட்டவணைப்பெயர்1 = அட்டவணைப்பெயர்.strip() கோப்புநீட்சி1 = '.pdf' கோப்புநீட்சி11 = '.pdf/' கோப்புநீட்சி2 = '.djvu' கோப்புநீட்சி22 = '.djvu/' நூலமைப்பு1 = 'அட்டவணை' நூலமைப்பு2 = 'Index' நூலமைப்பு3 = 'index' பக்கம் = 'பக்கம்' பக்கப்பெயர்சில = அட்டவணைப்பெயர்1.replace(நூலமைப்பு1,பக்கம்).replace(நூலமைப்பு2,பக்கம்).replace(நூலமைப்பு3,பக்கம்).replace(கோப்புநீட்சி1,கோப்புநீட்சி11).replace(கோப்புநீட்சி2,கோப்புநீட்சி22) ## வரிசையாக அட்டவணையின் பக்கப் பெயர்களுக்கு எண் இடுகிறேன் எண்வகை = 1 for தகவல் in range (பக்கத்தொடக்கம்,பக்கமுடிவு+1): if தகவல் % எண்வகை == 0: பக்கஎண் = str(தகவல்) பக்கப்பெயர்முழு = பக்கப்பெயர்சில + பக்கஎண்.strip() print (அடிக்கோடுபுள்ளி) print( பக்கப்பெயர்முழு ) print (அடிக்கோடுபுள்ளி) # with open ('000-தற்போதுவேண்டியபக்கப்பெயர்கள்.csv', 'a') as உருவாகும்கோப்பு: # கோப்பெழுதி = உருவாகும்கோப்பு.write((பக்கப்பெயர்முழு)+'\n') இணையதளம் = pywikibot.Site('ta', 'wikisource') தொடக்கப்பக்கம் = pywikibot.Page(இணையதளம்,பக்கப்பெயர்முழு) தொபமுழுத்தரவு = தொடக்கப்பக்கம்.text # print("----------------------- தொடக்கப்பக்க முழுத்தரவு தொடக்கம் --------------------------") # print(தொபமுழுத்தரவு) # print(type (தொபமுழுத்தரவு)) # print("------------------------ தொடக்கப்பக்க முழுத்தரவு முடிந்தது -----------------------------") தேடுகுறிமுறை = re.compile("\.*?\<\/noinclude>", re.DOTALL) தொபகுறிச்சொற்கள் = re.findall(தேடுகுறிமுறை, தொபமுழுத்தரவு) தொபமேலடித்தரவு = தொபகுறிச்சொற்கள்[0] தொபகீழடித்தரவு = தொபகுறிச்சொற்கள்[1] தொபநடுப்பகுதி = re.sub(தேடுகுறிமுறை, '', தொபமுழுத்தரவு).strip() # print(தொபநடுப்பகுதி) ## நடுப்பகுதியின் முதற்சிலவரிகளைக் காட்டுதல் ## https://stackoverflow.com/questions/17912307/u-ufeff-in-python-string மேலடித்தரவுநடுபிரிப்பு = தொபநடுப்பகுதி.split('\n') தொபநடுப்பகுதிசில = மேலடித்தரவுநடுபிரிப்பு [0].strip() # print ( தொபநடுப்பகுதிசில ) if not int( பக்கஎண் ) % 2 == 0 : # print('விக்கிபக்கப்பெயர் ஒற்றையெண் ஆகும் = ' + பக்கஎண் ) நூலின்அச்செண் = int( பக்கஎண் )-கழியும்எண் # print(type ( நூலின்அச்செண் )) # print( நூலின்அச்செண் ) நூலின்அச்செண்ணுரை = str(நூலின்அச்செண்) # print(type ( நூலின்அச்செண்ணுரை )) # print('நூலின் அச்செண், ஒற்றையெண் ஆகும் = ' + நூலின்அச்செண்ணுரை ) # print (அடிக்கோடுபுள்ளி) print('முந்தைய மேலடி;- \n' + தொபமேலடித்தரவு + '\n') if '{{rh|' in தொபமேலடித்தரவு or '
' in தொபமேலடித்தரவு : print("'{{rh|'வார்ப்புரு இடப்பட்டுள்ளது.\n") else: # print("'{{rh|'வார்ப்புரு இல்லை.\n") தொபமேலடித்தரவுத்தூய்மை1 = தொபமேலடித்தரவு.replace('','') # print( தொபமேலடித்தரவுத்தூய்மை1 ) தொபமேலடித்தரவுத்தூய்மை2 = தொபமேலடித்தரவுத்தூய்மை1.split('/>') [0] # print( தொபமேலடித்தரவுத்தூய்மை2 ) தொபமேலடித்தரவுத்தூய்மை3 = தொபமேலடித்தரவுத்தூய்மை2 + '/>' # print( தொபமேலடித்தரவுத்தூய்மை3 ) தொபமேலடித்தரவுபுதிது = தொபமேலடித்தரவுத்தூய்மை3 + '{{rh|' + மின்னூலின்ஒற்றைப்படையில்இடவேண்டியவுரை + '||' + நூலின்அச்செண்ணுரை + '}} ' print ('புதிய மேலடி;-\n ' + தொபமேலடித்தரவுபுதிது ) print (அடிக்கோடுபுள்ளி) மாற்றியமுழுத்தரவு = தொபமுழுத்தரவு.replace( தொபமேலடித்தரவு , தொபமேலடித்தரவுபுதிது ).replace(தொபநடுப்பகுதிசில,'') # தொடக்கப்பக்கம்.text = மாற்றியமுழுத்தரவு # print (மாற்றியமுழுத்தரவு) தொபமேலடித்தரவுபுதிதுஅண்மை1 = தொபமேலடித்தரவுபுதிது.split('}}') தொபமேலடித்தரவுபுதிதுஅண்மை2 = தொபமேலடித்தரவுபுதிது.split('/>') தொபமேலடித்தரவுபுதிதுஅண்மை3 = தொபமேலடித்தரவுபுதிதுஅண்மை2 [-1].replace('','') print ( தொபமேலடித்தரவுபுதிதுஅண்மை3 ) print ( தொபநடுப்பகுதிசில ) தொடக்கப்பக்கம்.save('+' + தொபமேலடித்தரவுபுதிதுஅண்மை3 )#தொபமேலடித்தரவுத்துப்புரவு if int( பக்கஎண் ) % 2 == 0 : # print('விக்கிபக்கப்பெயர் இரட்டையெண் ஆகும் = ' + பக்கஎண் ) நூலின்அச்செண் = int( பக்கஎண் )-கழியும்எண் # print(type ( நூலின்அச்செண் )) # print( நூலின்அச்செண் ) நூலின்அச்செண்ணுரை = str(நூலின்அச்செண்) # print(type ( நூலின்அச்செண்ணுரை )) # print('நூலின் அச்செண், இரட்டையெண் ஆகும் = ' + நூலின்அச்செண்ணுரை ) print (அடிக்கோடுபுள்ளி) print('முந்தைய மேலடி;- \n' + தொபமேலடித்தரவு + '\n') if '{{rh|' in தொபமேலடித்தரவு or '
' in தொபமேலடித்தரவு : print("'{{rh|'வார்ப்புரு இடப்பட்டுள்ளது.\n") else: # print("'{{rh|'வார்ப்புரு இல்லை.\n") தொபமேலடித்தரவுத்தூய்மை1 = தொபமேலடித்தரவு.replace('','') # print( தொபமேலடித்தரவுத்தூய்மை1 ) தொபமேலடித்தரவுத்தூய்மை2 = தொபமேலடித்தரவுத்தூய்மை1.split('/>') [0] # print( தொபமேலடித்தரவுத்தூய்மை2 ) தொபமேலடித்தரவுத்தூய்மை3 = தொபமேலடித்தரவுத்தூய்மை2 + '/>' # print( தொபமேலடித்தரவுத்தூய்மை3 ) தொபமேலடித்தரவுபுதிது = தொபமேலடித்தரவுத்தூய்மை3 + '{{rh|' + நூலின்அச்செண்ணுரை + '||' + மின்னூலின்இரட்டைப்படையில்இடவேண்டியவுரை + '}} ' print ('புதிய மேலடி;-\n ' + தொபமேலடித்தரவுபுதிது ) print (அடிக்கோடுபுள்ளி) மாற்றியமுழுத்தரவு = தொபமுழுத்தரவு.replace( தொபமேலடித்தரவு , தொபமேலடித்தரவுபுதிது ).replace(தொபநடுப்பகுதிசில,'') # தொடக்கப்பக்கம்.text = மாற்றியமுழுத்தரவு # print (மாற்றியமுழுத்தரவு) தொபமேலடித்தரவுபுதிதுஅண்மை1 = தொபமேலடித்தரவுபுதிது.split('}}') தொபமேலடித்தரவுபுதிதுஅண்மை2 = தொபமேலடித்தரவுபுதிது.split('/>') தொபமேலடித்தரவுபுதிதுஅண்மை3 = தொபமேலடித்தரவுபுதிதுஅண்மை2 [-1].replace('','') print ( தொபமேலடித்தரவுபுதிதுஅண்மை3 ) print ( தொபநடுப்பகுதிசில ) தொடக்கப்பக்கம்.save('+' + தொபமேலடித்தரவுபுதிதுஅண்மை3 ) #தொபமேலடித்தரவுத்துப்புரவு time.sleep(காத்திருப்புநொடிகள்)