本文目录
python读取pdf内容?
代码示例:
#!/usr/bin/env python3
#-*- coding:utf-8 -*-
# pip3 install pdfminer3k
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LAParams, LTTextBoxHorizontal
from pdfminer.pdfparser import PDFParser, PDFDocument
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter, PDFTextExtractionNotAllowed
from pdfminer.pdfdevice import PDFDevice
def read_pdf(pdf_name, result_name):
# 以二进制读模式打开
fp = open(pdf_name, 'rb')
# 用文件对象来创建一个pdf文档分析器
parser = PDFParser(fp)
# 创建一个pdf文档
doc = PDFDocument()
# 连接分析器 与文档对象
parser.set_document(doc)
doc.set_parser(parser)
# 提供初始密码,如果没有密码 就创建一个空的字符串
doc.initialize('')
# 检测文档是否提供txt转换,不提供就抛出异常
if not doc.is_extractable:
raise PDFTextExtractionNotAllowed
# 创建PDf 资源管理器 来管理共享资源
rsrcmgr = PDFResourceManager()
# 创建一个PDF设备对象
laparams = LAParams()
device = PDFPageAggregator(rsrcmgr, laparams=laparams)
# 创建一个PDF解释器对象
interpreter = PDFPageInterpreter(rsrcmgr, device)
with open(result_name,"w",encoding="u8") as fd_out:
# 循环遍历列表,每次处理一个page的内容
for i,page in enumerate(doc.get_pages(),1):
index = "===========《第{}页》===========".format(i)
print(index)
fd_out.write(index + "\n")
interpreter.process_page(page)
# 接受该页面的LTPage对象
layout = device.get_result()
for x in layout:
# 这里layout是一个LTPage对象 里面存放着 这个page解析出的各种对象 一般包括LTTextBox,
# LTFigure, LTImage, LTTextBoxHorizontal 等等 想要获取文本就获得对象的text属性
if not isinstance(x, LTTextBoxHorizontal):
continue
results = x.get_text()
print(results)
fd_out.write(results)
if __name__ == '__main__':
pdf_name = 'test.pdf'
result = 'test.txt'
read_pdf(pdf_name, result)
异步错误怎么回事。指导下?
jquery的ajax有一个error错误警告机制。具体你去看一下手册,
(默认:自动判断(xml或html))请求失败时调用此函数。有以下三个参数:XMLHttpRequest
对象、错误信息、(可选)捕获的异常对象。如果发生了错误,错误信息(第二个参数)除了得到null之外,还可能是"timeout","error",
"notmodified"和"parsererror"。
ADatabaseErrorOccurred这个错误是怎么回事?
错误 A Database Error Occurred的解决办法: index.php中修改error_reporting: if (defined('ENVIRONMENT')) { switch (ENVIRONMENT) { case 'development': error_reporting(0); break; case 'testing': case 'production': error_reporting(0); break; default: exit('The application environment is not set correctly.'); } }
安装cad显示1935怎么办?
在安装CAD过程中出现1935错误通常是由于Microsoft .NET Framework或MSXML组件未安装、损坏或存在问题所导致的。解决此问题的步骤如下:
1. 重新启动您的计算机,然后再次尝试运行CAD程序。
2. 检查Microsoft .NET Framework是否已安装。打开控制面板,选择“程序”或“程序和功能”,找到并查看是否已安装.NET Framework。如果没有安装,请下载并安装Microsoft .NET Framework最新版本。
3. 检查MSXML组件是否安装。按下Win+R键,在运行框中输入"appwiz.cpl"命令打开程序与功能,找到“MSXML”或者“Microsoft XML Parser”的组件,看是否已安装,如果没有安装,请下载并安装MSXML最新版本。
4. 禁用计算机上的安全软件和防病毒软件,然后再运行CAD程序。
5. 如果上述方法都没有解决问题,那么可能需要卸载并重新安装程序。
如果问题还是存在,建议您联系CAD程序的支持团队进行咨询和解决。
怎么从列表里提取想要的数据?
从列表里提取想要的数据一般可以通过编程语言或者Excel等工具实现。下面分别介绍两种方式:
1.编程语言实现
如果你熟悉编程语言,可以使用Python等语言来提取想要的数据。下面是一个简单的Python代码示例:
```python
import requests
from bs4 import BeautifulSoup
url = "http://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
data_list = soup.find_all("div", class_="data")
for data in data_list:
? ? print(data.text)
```
上述代码中,首先使用`requests`库获取了一个网站的内容,并使用`beautifulsoup4`库对网站内容进行了解析,然后查找了所有class为"data"的`<div>`标签,并打印了其中的文本数据。你可以根据需要修改代码中的url及标签信息以满足不同网站的数据提取需求。
2.Excel实现
如果不想使用编程语言,也可以使用Excel的筛选和排序功能来提取想要的数据。下面是一个简单的Excel数据处理示例:
1. 打开Excel并导入需要处理的数据;
2. 选中数据区域,并点击“数据”选项卡中的“排序和过滤”按钮;
3. 在弹出的菜单中选择“筛选”,然后按照需要选择需要筛选的条件,并点击“确定”;
4. 筛选完成后,Excel将只展示符合条件的数据。你可以根据需要导出或保存这些数据。
需要注意的是,这种方法适用于提取较小的数据量,对于大规模的数据处理还是需要使用编程语言等工具。