我正在尝试使用PDFplumber从pdf文件中提取文本
import pdfplumber
pdf = pdfplumber.open(r"https://www.lupin.com/pdf/financials/subsidiaries/multicare-pharmaceuticals-philippines-inc-philippines-2018.pdf")
for ps in pdf.pages:
print(ps.extract_text(y_tolerance=20))但是,我得到的输出如下所示。它不会提取确切的文本并返回符号-
(A WhLolUlyI POnwdMIenNapFerid ecnP nhSad Hun3ebc1Insi,aiLt d 2laAiI a0SnuPr1tdyda8P itot eIafo mnLNrusde’pE n2iRnSt0es H1, p o7oIl drNitn Cgs., B.V.)
1135 Chino Roces Avenue , Makati City, Philippines None None None (SLATU AWPTIhENoMll yPE NOHwTISLn eIOdPF PS FuIINbNsEiAdSiNa, rCIyIN AoCfL L. PuOpiSnI HToIOldNings, B.V.) PDCTDIPRNACnrrreaueuSooeavfsferSnppudeTTehr Enae-enroofercryr tTdttnoeaotaaumaSymdntrllrb i edrCNeAa tlneer asnuosoe tnxdrnsstslr ath e-eaee tcecAtsnequurssdtsu rre r rsiiAetptpeesyscamnts ertdseeit veiAtnesapstsbo–slesneitetssst–net No21129678t2201es PP 434 125863 21674007458 0,,,,,,,,,, 2367029366 1 26653629047825231406078 ,,,,,,,,,,, 43521581332 01450564793 M07073790873arc h 3 1 P P 323 313732 51359221260 ,,,,,,,,,,1 1685100499 72767656537925485539399,,,,,,,,,,,446553288940724576365308101010455 SDSDTDLCENerIhqueeuoaeAaffuern dTeiNrrBc i-eroetetoiIcrot yt tneaLcau erdantsIlre pdTrCtLltoaei aIuito atEnaxFretiblr Sthndle iiea L alnApnirbitt caaN piiiLlerbaiDatitlsaii yy elSbEiatstiabQylitlteeUimesIseTnYts 11211214 PP 444( 134362 7907555 ,,,,,,, 146490647732044012981676,,,,,,,,968737381184639575050575) PP 332 ( 341039 5473266 ,,,,,,, 6692396 2801199 1417594 ,,,,,,, 2033441-32631380406151) 发布于 2021-05-13 21:29:07
因为y_tolerance的值太高,所以没有提供确切的文本。提取文本时,如果一个字符的doctop与下一个字符的doctop之间的差异大于y_tolerance,则pdfplumber会添加换行符。要解决此问题,可以删除参数,如下所示
for ps in pdf.pages:
print(ps.extract_text())奇怪的符号出现了,因为右下角的条形码和PDF中的项目符号。如果你试图复制任何页面上的条形码,你会得到奇怪的表情符号unicode字符。如果您不需要它们,您可以简单地替换它们。
https://stackoverflow.com/questions/67353169
复制相似问题