以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助。

01.Tablib

https://www.oschina.net/p/Tablib

Tablib 是一个用来处理与表格格式数据有关的 Python 库,允许导入、导出、管理表格格式数据,并具备包括切片、动态列、标签和过滤,以及格式化导入和导出等高级功能。

Tablib 支持导出/导入的格式包括:Excel 、JSON 、YAML 、HTML 、TSV 和 CSV ,暂不支持 XML 。

>> data = tablib.Dataset(headers=['First Name', 'Last Name', 'Age'])
>>> for i in [('Kenneth', 'Reitz', 22), ('Bessie', 'Monke', 21)]:
... data.append(i)
>>> print(data.export('json'))
[{"Last Name": "Reitz", "First Name": "Kenneth", "Age": 22}, {"Last Name": "Monke", "First Name": "Bessie", "Age": 21}]
>>> print(data.export('yaml'))
- {Age: 22, First Name: Kenneth, Last Name: Reitz}
- {Age: 21, First Name: Bessie, Last Name: Monke}
>>> data.export('xlsx')
<censored binary data>
>>> data.export('df')
First Name Last Name Age
0 Kenneth Reitz 22
1 Bessie Monke 21

02.Openpyxl

https://www.oschina.net/p/openpyxl

Openpyxl 是一个用于读写 Excel 2010 xlsx / xlsm / xltx / xltm 文件的 Python 库。

Openpyxl 为 Python 原生读取/写入 Office Open XML 格式而生,最初是基于 PHPExcel 而开发。

from openpyxl import Workbook
wb = Workbook()
# grab the active worksheet
ws = wb.active
# Data can be assigned directly to cells
ws['A1'] = 42
# Rows can also be appended
ws.append([1, 2, 3])
# Python types will automatically be converted
import datetime
ws['A2'] = datetime.datetime.now()
# Save the file
wb.save("sample.xlsx")

03.unoconv

https://www.oschina.net/p/unoconv

unoconv,全称为 Universal Office Converter ,是一个命令行工具,可在 LibreOffice/OpenOffice 支持的任意文件格式之间进行转换。

unoconv 支持批量转换文档,还可以结合 asciidoc和 docbook2odf / xhtml2odt 来创建 PDF 或 Word(.doc) 文件。

[dag@moria cv]$ make odt pdf html doc
rm -f *.{odt,pdf,html,doc}
asciidoc -b docbook -d article -o resume.xml resume.txt
docbook2odf -f --params generate.meta=0 -o resume.tmp.odt resume.xml
Saved resume.tmp.odt
unoconv -f odt -t template.ott -o resume.odt resume.tmp.odt
unoconv -f pdf -t template.ott -o resume.pdf resume.odt
unoconv -f html -t template.ott -o resume.html resume.odt
unoconv -f doc -t template.ott -o resume.doc resume.odt

04.PyPDF2

https://www.oschina.net/p/pypdf

PyPDF2 是一个纯 Python PDF 库,能够分割、合并、裁剪和转换 PDF 文件页面。它还可以添加自定义数据、查看选项和密码到 PDF 文件。

PyPDF2 可以从 PDF 中检索文本和元数据,也可以将整个文件合并在一起。

from PyPDF2 import PdfFileWriter, PdfFileReader
output = PdfFileWriter()
input1 = PdfFileReader(open("document1.pdf", "rb"))
# print how many pages input1 has:
print "document1.pdf has %d pages." % input1.getNumPages()
# add page 1 from input1 to output document, unchanged
output.addPage(input1.getPage(0))
# add page 2 from input1, but rotated clockwise 90 degrees
output.addPage(input1.getPage(1).rotateClockwise(90))
# add page 3 from input1, rotated the other way:
output.addPage(input1.getPage(2).rotateCounterClockwise(90))
# alt: output.addPage(input1.getPage(2).rotateClockwise(270))
# add page 4 from input1, but first add a watermark from another PDF:
page4 = input1.getPage(3)
watermark = PdfFileReader(open("watermark.pdf", "rb"))
page4.mergePage(watermark.getPage(0))
output.addPage(page4)
# add page 5 from input1, but crop it to half size:
page5 = input1.getPage(4)
page5.mediaBox.upperRight = (
page5.mediaBox.getUpperRight_x() / 2,
page5.mediaBox.getUpperRight_y() / 2
)
output.addPage(page5)
# add some Javascript to launch the print window on opening this PDF.
# the password dialog may prevent the print dialog from being shown,
# comment the the encription lines, if that's the case, to try this out
output.addJS("this.print({bUI:true,bSilent:false,bShrinkToFit:true});")
# encrypt your new PDF and add a password
password = "secret"
output.encrypt(password)
# finally, write "output" to document-output.pdf
outputStream = file("PyPDF2-output.pdf", "wb")
output.write(outputStream)

05.Mistune

http://mistune.readthedocs.io/

Mistune 是一个纯 Python 实现的 Markdown 解析器,功能齐全,包括表格、注释、代码块等。

Mistune 据称是所有纯 Python markdown 解析器中速度最快的(基准测试结果)。它在设计时考虑了模块化,以提供一个清晰易用的可扩展的 API 。

import mistune
mistune.markdown('I am using **mistune markdown parser**')
# output: <p>I am using <strong>mistune markdown parser</strong></p>

06.csvkit

https://www.oschina.net/p/csvkit

csvkit 号称是处理 csv 文件的瑞士军刀,集成了 csvlook , csvcut 和 csvsql 等实用工具,可以以表格形式显示 CSV 文件,轻松选取 CSV 指定列,以及在其上执行 SQL 操作。

csvkit 是一个命令行工具,灵感来自 pdftk 、gdal 和其它类似工具。

io python 读取pdf_实用又好用,6 款 Python 特殊文本格式处理库推荐相关推荐

  1. 特别实用的 6 款 Python 特殊文本格式处理库推荐

    以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助. 01.Tablib https://www.oschina.net/p/Tablib Tablib 是一个用来处理 ...

  2. 实用又好用,6 款 Python 特殊文本格式处理库推荐

    (给机器学习算法与Python学习加星标,提升AI技能) 本文由开源中国(oschina2013)整理 以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助. 01 Ta ...

  3. python 文本处理库_实用又好用,6 款 Python 特殊文本格式处理库推荐

    以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助. Tablib 是一个用来处理与表格格式数据有关的 Python 库,允许导入.导出.管理表格格式数据,并具备包括切 ...

  4. 如何用Python读取Excel中图片?又如何用Python往Excel中写入图片?

    大家好,在使用Python进行办公自动化操作时,一定少不了与Excel表格的交互,我们通常是用pandas处理表格数据,但大多数情况下,都是读取表格中的数值进行分析. 那么你知道如何使用Python读 ...

  5. python 读取excel表数据_5分钟学会用Python 读取Excel

    5分钟学会用Python 读取Excel 日常办公使用频率最高的软件非Excel莫属了,如果我们遇到需要导入别人的Excel进行后续数据分析.读取内容等操作,我们该怎么办呢? 测试开发哥哥说:莫要慌, ...

  6. python读取matlab数据_详解如何在python中读写和存储matlab的数据文件(*.mat)

    背景 在做deeplearning过程中,使用caffe的框架,一般使用matlab来处理图片(matlab处理图片相对简单,高效),用python来生成需要的lmdb文件以及做test产生结果.所以 ...

  7. python读取大文件太慢_强悍的Python读取大文件的解决方案

    Python 环境下文件的读取问题,请参见拙文 Python基础之文件读取的讲解 这是一道著名的 Python 面试题,考察的问题是,Python 读取大文件和一般规模的文件时的区别,也即哪些接口不适 ...

  8. python读取excel日期内容读出来是数字-Python读取Excel,日期列读出来是数字的处理...

    Python读取Excel,里面如果是日期,直接读出来是float类型,无法直接使用. 通过判断读取表格的数据类型ctype,进一步处理. 返回的单元格内容的类型有5种: ctype: 0 empty ...

  9. python读取文件_一日一技:使用Python读取Excel文件

    安装xlrd模块: pip install xlrd 使用xlrd模块,可以从电子表格中检索信息. 例如,可以在Python中完成读取,写入或修改数据的操作. 另外,用户可能必须浏览各种工作表并根据某 ...

最新文章

  1. 开放式创新改变世界——OpenStack生态系统将重新洗牌
  2. asp.net 用户控件
  3. 怎么修复手机服务器,新手机怎么恢复旧手机上的所有数据?
  4. 二叉树的前中后序遍历之迭代法(统一风格迭代方式)
  5. 腾讯视频上如何上传视频
  6. android java 调用js_Android Java/JS互相调用
  7. 一建管道工程122知识点_过梁、你应该知道的知识点
  8. 推荐系统思维导图——第一章
  9. androidpn环境搭建
  10. 不注册使用 .NET Reactor
  11. springboot 打印日志
  12. PostgreSQL与中文社区
  13. 黑马python培训费用
  14. 字符串(昵称)过滤特殊符号和表情(通用)
  15. WRF学习笔记二:WRF-chem简单入门运行指南
  16. 知名人寿保险品牌SCRM成功案例-全员营销方案赋能 提升客户管理能力
  17. dz邮箱验证怎么设置_如何设置discuz qq邮箱验证
  18. jemalloc源码解读(六)基数树
  19. Cocos2d-x 游戏中子弹的设计 (一)
  20. SQL语句:rtrim及ltrim 函数

热门文章

  1. 如何看待导师直接说你写的论文就是垃圾?
  2. 推荐一位我的好朋友,8年码农,前鹅厂工程师!
  3. 精选SpringBoot+Vue开发的开源系统(前端+后端+小程序)
  4. 有没有什么高效「炼丹」神器可以推荐?复旦fastNLP团队祭出内部调参利器fitlog...
  5. 小米回应暴力裁员:已提前三个月通知不续签合同,并且给了N+1补偿
  6. 活久见!技术面试官竟然给我出了一个脑筋急转弯,还问我王者荣耀什么段位?...
  7. m个足球放入n个篮子中或者放苹果问题
  8. 干货|神经网络及理解反向传播
  9. 从暗通道先验去雾到海底图像修复-三维重建辅助计算摄影
  10. 结合Android去水印APP谈谈分区存储