python - 需要有关使用 Python 和 MySQL 编写文档控制软件的建议

标签 python mysql file

我正在寻找有关重写我开发的简单文档控制应用程序的最佳方法的开放式建议,该应用程序实际上只是一个自定义文件日志生成器,用于查找并记录具有特定命名格式的文件,并且文件位置。例如,我们以“CO#3 Brief description.docx”格式命名所有变更单。当它们发布时,它们会被移动到另一个具有项目名称的文件夹下的“已发布”文件夹中。因此,通过记录文件并查询其路径,我们可以知道它与哪个项目关联以及是否已发布。

我用Python 3.3编写的。效果很好,但代码很难支持,因为我在遍历文件结构的同时构建报告,这可能会变得非常困惑。我认为最好先构建大多数/所有文件的数据库,然后使用 SQL 查询数据库来构建报告。

很抱歉提出开放式问题,但我希望不要重新发明轮子。有人对走这条路有什么建议吗?例如,我应该查看现有的应用程序或可能有帮助的 bundle ?我有丰富的 C/C++ 编码经验,但对 Python 和 MySQL 仍然很陌生。任何建议将不胜感激。

最佳答案

@GCord 的回答非常好。我只添加两位:

  • 如果是一个相对较小的数据库,请考虑sqlite3而不是 MySQL(它很好地支持开箱即用、多平台、无 依赖于正在运行的 RDBMS)
  • 如果预计会增长,和/或您 只是想玩一些新技术,尝试编写自动化 真实文档管理系统的摄取脚本(例如 http://www.alfresco.com/ )。 ID 推荐Apache Solr(基于Apache Lucene)全文 索引服务,然后您可以使用 Apache Tika 自动 从文档中提取文本和元数据(请参阅 http://wiki.apache.org/solr/ExtractingRequestHandler )

关于python - 需要有关使用 Python 和 MySQL 编写文档控制软件的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27096588/

相关文章:

MySQL 日期的多个 if 语句

linux - 如何使用 shell 脚本查找两个文本文件之间的不常见行?

php - MySQL 资源获取的行数

mysql - 如何使用现有表及其在 MySQL 中的记录创建临时表?

c - 写入()调用失败 : No space left on device: ENOSPC handling

java - 使用java获取文件夹的挂载点

python - 如果列值,则从数据框中删除行

python - 为什么 tensorflow 模型总是预测同一类?

python - 如何在python中使用uber h3将shapefile/geojson转换为六边形?

python - 属性错误 : module 'django.contrib.postgres.fields' has no attribute 'JSONField'