从文档文件中吐出文本的python包!

TextSpitter的Python项目详细描述


感谢您使用textspitter!!

我创建了这个小应用程序来帮助我处理来自文件夹集和批处理的文档。与其试图确定每个文件类型并相应地进行处理,我认为读取文件名然后相应地路由文本提取函数会更为谨慎。另外,由于该死的poppler,我很难让textract/pdftotext工作。所以我没有在6个多小时后对整个过程进行故障排除,而是认为这样更省时。

这是我的第一个python模块,所以我希望我做得很好!

安装

  • 键入pip install TextSpitter
  • 可选键入pip install PyMuPDF以安装python mupdf引擎,提高文本提取的逼真度(即:保持正确的白间距)
    • 您需要按照说明来确保pymupdf的依赖项安装到您的系统中。Windows、Linux和MacOSX都提供了轮子和二进制文件,不过如果您使用的是像netbsd/freebsd/specialty Linux发行版这样奇怪的版本,那么您可能需要sol。幸运的是,诸如yum、pkgin、apt-get等cli选项将直接从终端提供包。
    • 详细的说明,请访问这里:https://github.com/rk700/PyMuPDF也许给那些家伙一些荣誉,因为他们的尾巴工作了。

方向

这个模块被设计成尽可能简单地运行。只需在参数中提供文件位置字符串数据,并将文本返回给您。

from TextSpitter import TexSpitter as TS
import sqlite3


folder_loc = 'foo/bar/'

# doc_file = folder_loc + 'file_thing.doc'
docx_file = folder_loc + 'file_thing.docx'
pdf_file = folder_loc + 'file_thing.pdf'
text_file = folder_loc + 'file_thing.txt'

doc_tup = (docx_file, pdf_file, text_file)
# doc_tup = (doc_file, docx_file, pdf_file, text_file)

# SQL code to write to database
conn = sqlite3.connect('example_db')
c= conn.cursor()

STMNT = 'INSERT INTO doc_contents VALUE %s'

# For Loop code to insert doc content into db
for ele in doc_tup:
	text = TS(ele)
	c.executemany(STMNT, text)
	print('Done!  Wrote the following to db: %s', (text[:25]))

待办事项

  • [X]按到Github
  • [X]由于遗留格式的大量专有需求,删除.doc支持
  • []整理文档
  • []征求反馈
  • []将功能扩展到其他文件类型
  • []TDB

想要贡献!?

哦,天哪,请这样做。

只需发出一个请求并添加您想要的内容(或者修复您想要的内容)。如果一切顺利的话,我会审查和批准的。

谢谢大家!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java创建了一个包含Flyway迁移的docker映像   java如何使用SeleniumWebDriver将HashSet和LinkedHashSet与List<WebElement>结合使用   java从可运行任务调用外部方法。   java Javafx:将图像应用于meshview不起作用   多线程Java:提高慢线程动画的平滑度?   java Android后台服务计时器无法正常工作   java我们可以在关闭应用程序时删除SharedReferences吗   java单例作用域bean在spring中,如何使其非线程安全   基于子元素值的java JAXB解组子类   java如何确定数据库的URL?   java如何解决这个AbstractMethodError?   DirectoryStream迭代期间的java句柄目录更新   java汇合JDBC连接器和Flink使用者   java如何让程序检测特殊字符,特别是“!@#$%^&*”?   java优化拖动代码