python爬虫:读取PDF

下面的代码可以实现用python读取PDF,包括读取本地和网络上的PDF。

pdfminer下载地址:https://pypi.python.org/packages/source/p/pdfminer/pdfminer-20140328.tar.gz

#!/usr/bin/python# -*- encoding:utf-8 -*-

from urllib2 import urlopenfrom pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreterfrom pdfminer.converter import TextConverterfrom pdfminer.layout import LAParamsfrom pdfminer.pdfpage import PDFPagefrom cStringIO import StringIO

def convert_pdf_to_txt(fp):    rsrcmgr = PDFResourceManager()    retstr = StringIO()    codec = ‘utf-8‘    laparams = LAParams()    device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)    interpreter = PDFPageInterpreter(rsrcmgr, device)    password = ""    maxpages = 0    caching = True    pagenos=set()    for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password,caching=caching, check_extractable=True):        interpreter.process_page(page)

    fp.close()    device.close()    textstr = retstr.getvalue()    retstr.close()    return textstr

url=‘http://pythonscraping.com/pages/warandpeace/chapter1.pdf‘fp = StringIO(urlopen(url).read())  # for url

# path=‘chapter1.pdf‘# fp = file(path, ‘rb‘)               # for path

text=convert_pdf_to_txt(fp)print text
时间: 2024-08-10 21:29:49

python爬虫:读取PDF的相关文章

python爬虫处理在线预览的pdf文档

引言 最近在爬一个网站,然后爬到详情页的时候发现,目标内容是用pdf在线预览的 比如如下网站: https://camelot-py.readthedocs.io/en/master/_static/pdf/foo.pdf 根据我的分析发现,这样的在线预览pdf的采用了pdfjs加载预览,用爬虫的方法根本无法直接拿到pdf内的内容的,对的,你注意到了我说的[根本无法直接拿到]中的直接两个字,确实直接无法拿到,怎么办呢?只能把pdf先下载到本地,然后用工具转了,经过我查阅大量的相关资料发现,工具还

[Python爬虫] 中文编码问题:raw_input输入、文件读取、变量比较等str、unicode、utf-8转换问题

最近研究搜索引擎.知识图谱和Python爬虫比较多,中文乱码问题再次浮现于眼前.虽然市面上讲述中文编码问题的文章数不胜数,同时以前我也讲述过PHP处理数据库服务器中文乱码问题,但是此处还是准备简单做下笔记.方便以后查阅和大家学习. 中文编码问题的处理核心都是--保证所有的编码方式一致即可,包括编译器.数据库.浏览器编码方式等,而Python通常的处理流程是将unicode作为中间转换码进行过渡.先将待处理字符串用unicode函数以正确的编码转换为Unicode码,在程序中统一用Unicode字

Python读取PDF内容

晚上翻看<Python网络数据采集>这本书,看到读取PDF内容的代码,想起来前几天集搜客刚刚发布了一个抓取网页pdf内容的抓取规则,这个规则适用的是已经把pdf内容合到html里的情况. 现在这个python版本的代码,是读取pdf文件内容(互联网上的或是本地的),觉得这个很有参考价值,就发个贴记录下来.这段代码主要是用了一个第三方库PDFMiner3K把PDF读成字符串,然后用StringIO转换成文件对象. from urllib.request import urlopen from p

深入学习python解析并读取PDF文件内容的方法

这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应用.主要参考了一些已有的博客内容,代码. 主要思路是首先利用一个做项目的形式,描述所做的问题,运行环境,和需要安装的库,然后写代码,此代码是在python2.7中运行,然后写出在python3.6中运行的代码,并详细解释python2.7和python3.6中python库的一些不同之处,最后详细的

分享《精通Python爬虫框架Scrapy》中文PDF+英文PDF+源代码

下载:https://pan.baidu.com/s/13tFIFOhDM8PG9pFUuA8M2g 更多分享资料:https://www.cnblogs.com/javapythonstudy/ <精通Python爬虫框架Scrapy>中文PDF+英文PDF+源代码 中文版PDF,364页,带目录和书签,文字可以复制粘贴,彩色配图:英文版PDF,270页,带目录和书签,文字可以复制粘贴,彩色配图:中英文两版对比学习.配套源代码. 其中,中文版如图: 原文地址:https://www.cnbl

分享《精通Python爬虫框架Scrapy》+PDF+源码+迪米特里奥斯+李斌

下载:https://pan.baidu.com/s/1-ruuQebCnyLVt5L8RATT-g 更多资料:http://blog.51cto.com/14087171 <精通Python爬虫框架Scrapy>中文PDF+英文PDF+源代码 中文版PDF,364页,带目录和书签,文字可以复制粘贴,彩色配图:英文版PDF,270页,带目录和书签,文字可以复制粘贴,彩色配图:中英文两版对比学习.配套源代码. 其中,中文版如图: 原文地址:http://blog.51cto.com/140871

学习《从零开始学Python网络爬虫》PDF+源代码+《精通Scrapy网络爬虫》PDF

学习网络爬虫,基于python3处理数据,推荐学习<从零开始学Python网络爬虫>和<精通Scrapy网络爬虫>. <从零开始学Python网络爬虫>是基于Python 3的图书,代码挺多,如果是想快速实现功能,这本书是一个蛮好的选择. <精通Scrapy网络爬虫>基于Python3,深入系统地介绍了Python流行框架Scrapy的相关技术及使用技巧. 学习参考: <从零开始学Python网络爬虫>PDF,279页,带目录,文字可复制: 配套

Python爬虫利器四之PhantomJS的用法

前言 大家有没有发现之前我们写的爬虫都有一个共性,就是只能爬取单纯的html代码,如果页面是JS渲染的该怎么办呢?如果我们单纯去分析一个个后台的请求,手动去摸索JS渲染的到的一些结果,那简直没天理了.所以,我们需要有一些好用的工具来帮助我们像浏览器一样渲染JS处理的页面. 其中有一个比较常用的工具,那就是 PhantomJS Full web stack No browser required PhantomJS is a headless WebKit scriptable with a Ja

一文贯通python文件读取

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; -webkit-hyphens: auto; font: 24.0px 'Helvetica Neue'; color: #3e3e3e; -webkit-text-stroke: #3e3e3e} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; -webkit-hyphens: auto; font: 16.0px 'Helvetica Neue'; color: #8c8c8c; -w