如何解决Python读取PDF内容速度慢的问题?
晚上翻看《Python网络资料集》这本书,看到了读取pdf内容的代码,想起前几天soking刚刚发布了一个抓取网页pdf内容的抓取规则,可以把PDF内容当做html来抓取网页。神奇之处在于Firefox解析pdf的能力,可以将PDF格式转换成html标签,比如div标签,这样GooSeeker网页抓取软件就可以像抓取普通网页一样抓取结构化内容。
这就提出了一个问题:Python爬虫可以用到什么程度?下面将描述一个实验过程和源代码。
2.将pdf转换成文本的Python源代码。
以下python源代码,读取pdf文件内容(互联网或本地),转换成文本并打印出来。这段代码主要使用第三方库PDFMiner3K将PDF作为字符串读取,然后使用StringIO将其转换为file对象。(源代码下载地址见文末GitHub源码。)
从urllib.request导入urlopenfrom pdfminer.pdfinterp导入PDFResourceManager,process _ pdf from pdf miner . converter导入text converter from pdf miner . layout导入LAParamsfrom io导入StringIOfrom io导入opendef readPDF(pdfFile):
rsrcmgr = PDFResourceManager()
retstr = StringIO()
laparams = LAParams()
device = TextConverter(rsrcmgr,retstr,laparams=laparams)
process_pdf(rsrcmgr,设备,pdf文件)
device.close()
content = retstr.getvalue()
retstr.close()返回内容
pdfFile = urlopen("/pages/warand peace/chapter 1 . pdf ")
output string = read pdf(pdf file)print(output string)
pdfFile.close()
如果PDF文件在您的计算机中,请用普通的open () file对象替换urlopen返回的PDF文件。
3.观点
这个实验只是把pdf转换成文本,而不是像开头说的那样转换成html标签,所以在Python编程环境中是否有这个能力还有待以后的探索。
4、set soking GooSeeker开源代码下载源码。
1.?GooSeeker开源Python网络爬虫GitHub源码
5.文档修改历史
2016-05-26: V2.0,附补充文字说明。
2016-05-29: V2.1,增加第六章:源代码下载源码,更改github源码的网址。