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 urlopen
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from 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

转载于:https://www.cnblogs.com/miranda-tang/p/5569439.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
进阶教程看:https://download.csdn.net/download/dwf1354046363/20818516 1 爬虫基本概述2 1.1 爬虫是什么. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 爬虫可以做什么. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 爬虫的分类. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.4 爬虫的基本流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4.1 浏览网页的流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4.2 爬虫的基本流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.5 爬虫与反爬虫. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5.1 爬虫的攻与防. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5.2 常见的反爬与反反爬. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.6 爬虫的合法性与robots 协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.6.1 robots 协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.6.2 查看网页的robots 协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.7 Python 爬虫相关库 2 Chrome 浏览器开发者工具10 2.1 Chrome 浏览器开发者工具简述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 什么是浏览器开发者工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.2 浏览器开发者工具基本使用. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2 浏览器开发者工具面板说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.1 元素(Elements) 面板. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.2 网络(Network) 面板(1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.3 网络(Network) 面板(2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 HTTP 协议16 3.1 HTTP 简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值