众所周知,python最强大的一点就是python社区拥有丰富的第三方库和开源特性,这让越来越多的技术开发者完善了它。
python的完美。
未来,人工智能、大数据方向、区块链识别和推进都将聚焦python。
咳咳!咳咳!似乎有点做广告的嫌疑。
当前互联网信息共享时代最重要的是什么?是数据。最有价值的是什么?是数据。技术水平最直观的表达是什么?或者数据。
所以我们今天想分享的是:如何获取每种文件格式的文本信息。
普通文件的格式一般分为:txt普通文本信息、doc word文档、html网页内容、excel表格数据、特殊mht文件。
1.Python处理html网页信息
html类型的文本数据,内容是前端代码写的tag格式+文本数据,可以直接在chrome浏览器中打开,清晰的显示文本格式。
Python获取html文件内容的方式和txt文件一样,所以可以直接读取文件。
按如下方式阅读代码:
用open(html_path," r ",encoding="utf-8 ")作为f:
file = f.read()
该文件是html文件的文本内容。是网页标签的格式内容。
第二,Python处理excel表格信息
Python有一个第三方库xlwt,xlrd,可以直接操作excel表格。通过调用相应的方法可以读写excel表格数据。
阅读excel操作代码如下:
file path = " c: user sadministratoredsktop创建一个新文件夹,其中包含武汉. xls的6个副本"
sheet_name = "UserList "
rb = xlrd.open_workbook(filepath)
sheet = Rb . sheet _ by _ name(sheet _ name)
# clox_list = [0,9,14,15,17]
对于范围(1,sheet.nrows)中的行:
w = WriteToExcel()
#对于clox_list中的clox:
name = sheet.cell(行,0)。价值
phone = sheet.cell(第15行)。价值
address = sheet.cell(第9行)。价值
major = sheet.cell(第14行)。价值
age = sheet.cell(第8行)。价值
其中row是表数据对应的行数,cell获取特定行和列的特定数据。
第三,Python读取文档数据
Python是读doc文档最麻烦的。复杂的处理逻辑。有很多方法可以处理。
Python没有直接处理doc文档的第三方库,但是有处理docx的第三方库。您可以通过将文档文件转换为docx文件,然后调用第三方python库pydocx来读取文档的内容。
这里需要注意的是,doc的后缀不应该直接修改为docx文件。Pydocx无法读取修改后缀直接获得的docx文件的内容。
我们可以用另一个库把doc修改成docx。
具体代码如下:
def doSaveAas(自身,doc_path):
"""
将文档转换为docx文档
:rtype:对象
"""
docx _ path = doc _ path . replace(" doc "," docx ")
word = wc。派遣('字。应用')
doc = word . documents . open(doc _ path)#目标路径下的文件
医生。saveas (docx _ path,12,false,“”,true,“”,false,false,false) #转换路径下的文件
医生。关闭()
单词。退出()
代码要求的包接口:
导入操作系统
导入file
从win32com导入客户端作为wc
导入xlrd
从bs4导入美化组
从pydocx导入PyDocX
从lxml导入html
从xpath_content导入XpathContent
从write_to_excel导入WriteToExcel
python处理docx文档的方式有很多种,具体用法看个人需求。
1号解压docx文件
docx文件的原理本质上是一个压缩的文件。解压后可以得到原文件的所有内容。
docx解压后的文件结构如下:
docx文件的文本内容存储结构如下:
文本内容存储在word/document.xml文件中。
第一种方法,我们可以先把docx还原成压缩文件,然后解压文件,读取word/document.xml文件的内容。
具体操作代码如下:
def get_content(self):
"""
获取docx文档的文本内容
:rtype:对象
"""
OS . chdir(r " c:usersadministratordesktop创建新文件夹)#将目录更改为文件目录
#
OS . rename(" 51 2014.09.12 1 Savannah . docx "," 51 2014 . 09 . 12 1 Savannah。ZIP") #被重命名为ZIP文件
f = file . file(' 51 2014 . 09 . 12,1份Savannah。压缩',' r') #用于解压缩
xml = f.read("word/document.xml ")
wordObj =美化组(xml.decode("utf-8 "))
#打印(wordObj)
texts = wordObj.findAll("w:t ")
内容= []
对于文本中的文本:
content.append(文本.文本)
content_str = " "。加入(内容)
返回内容_字符串
最后,我们得到了docx文档的所有文本数据。
第二,将docx文档转换成python可以处理的文本格式
第一种方法是根据docx文档的原理获取数据。过程有点繁琐。有什么方法可以直接读取docx文档的内容?答案肯定是否定的,不要想了,洗漱回家睡觉。
有什么方法可以直接阅读docx文档?有什么方法可以把docx文档转换成python可以轻松处理的文本格式?
我们可以要这个。前面说了,python有大量丰富的第三方库(首先我来夸一下python),我们历经千辛万苦终于找到了。一个可以转换docx文档格式的第三方库,pydocx,pydocx库有一个方法pydocx.to_html()可以直接把docx文档转换成html文件,怎么样?不意外不意外!
在第二种方法中,转换文本格式的代码如下:
def docx_to_html(self,docx_path):
"""
Docx文档被转换成html响应
:rtype:对象
"""
# docx _ path = " c: user sadministratoredsktop创建新文件夹 51 2014 . 09 . 12 1 Savannah . docx的副本"
response = pydocx . to _ html(docx _ path)
得到的响应是html文件的内容。
4.Python处理mht文件
Mht文件是只能在IE浏览器中显示的文本格式,在chrome浏览器中打开就是一堆乱码。
1号伪造IE请求mht文件的内容
阅读mht文本最基本的方法就是伪造IE浏览器请求。
调用请求库,发送get请求网页链接,构造IE的请求头信息。
理论上,这种方法是可行的。但是,我们不推荐,因为大家都知道为什么。
2号转换文件格式
好吧,说真的,你猜mht文件能不能修改成其他文件格式直接读。
Docx,没有;Html,没有;Excel就更不用说了。
真相只有一个!!!
直接修改后缀得到的Docx无法读取。
那么,我们想到的方法是什么呢?没错,就是修改成单据凭证。
方法不可思议,但也是一种启发。
Mht可以通过修改后缀直接转换成单据单据。从单据文档中读取文本内容的方法,请参考上述读取单据文档的方法。
如何获取html文本的内容?
html文本的内容是网页结构的标签数据,检索文本的方式是Reregular或xpath。
后续,如果有必要,朋友们会再开一章,了解更多re和RE,xapth的使用规则。
来源网络,侵权联系人删除
1.《python读取txt文件 Python 读取各类文件格式的文本信息 | doc,excel,html,mht》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《python读取txt文件 Python 读取各类文件格式的文本信息 | doc,excel,html,mht》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/caijing/1062320.html