2024 m. sausio 4 d., ketvirtadienis

Darbas su PDF failais. Žodžių skaičiavimas pasirinktame knygos puslapyje.

 Apačioje pateikiamas pavyzdys kaip suskaičiuoti vienodus žodžius PDF byloje. Ši programa sukaičiuoja žodžius viename pasirinktame PDF puslapyje. Tiesa tam jums reikės įsidiegti PyPDF2 biblioteką:

 

# importuojama reikalinga darbui su PDF biblioteka. Įprastoje Python distribucijoje jos nėra, taigi teks įsidiegti.
import PyPDF2

# sukuriamas failo objektas.
pdfFileObj = open('bylos vardas.pdf', 'rb')
 
# sukuriamas skaitymo objektas
pdfReader = PyPDF2.PdfReader(pdfFileObj)
 
# atspausdinamas puslapių skaičius
print('Puslapių skaičius =',len(pdfReader.pages))

e=int(input("įveskite puslapį ="))-1
 
# sukuriamas puslapio objektas
m=[]
for i in pdfReader.pages:
    m.append(i)
pageObj=m[e]
#pageObj = pdfReader.pages[10]
 
# ištraukiamas tekstas
k=pageObj.extract_text()

#print(k)
# uždaromas skaitymo objektas
pdfFileObj.close()

k=k.casefold()

# Sudaroma ženklų kuriuos reikia pašalinti seka.
r=(',',')','(','"',"'",'.','_',':','^','?','!','-','+','/','*')

#Metodo "replace" pagalba pašalinami nereikalingi ženklai.
for i in r:
    k=k.replace(i,"")

# Tekstas paverčiamas į sarašą sudarytą iš žodžių.
k1=k.split()

# Atminties taupymo tikslais ištrinamas nebenaudojamas sąrašas.       
del[k]

# Pašalinami skaičiai
k2=[]
for i in k1:
    if i.isnumeric():
        pass
    else:
        k2.append(i)
# Atminties taupymo tikslais ištrinamas nebenaudojamas sąrašas.       
del[k1]

# Sukuriama aibė:
k3=set(k2)
 
# Pasižiūrėjimui atsipausdiname sąrašo ir aibės ilgius.
print(len(k2),len(k3))

#Atspausdiname kiek konkretaus žodžio pasitaikymą tekste.
for i in k3:
    print(i,'=',k2.count(i))

 




Komentarų nėra:

Rašyti komentarą

Atmosferos elektra

"Žaibas trenkiantis išdebesies į Žemės paviršių bendru elektros požiūriu. Tai yra plazmos, esančios Žemės paviršiuje, pavyzdys. Paprast...