如何在 Linux 服务器上抓取 MS Word 文档文本?
有人问我是否要创建一个网站,让一些用户可以上传 Microsoft Word 文档,然后其他用户可以搜索包含某些关键字的上传文档。该站点将位于运行 PHP 和 MySQL 的 Linux 服务器上。我目前正在尝试找出是否以及如何从文档中删除此文本。如果有人能提出一个好的方法来做到这一点,我们将不胜感激。
I have been asked about creating a site where some users can upload Microsoft Word documents, then others can then search for uploaded documents that contain certain keywords. The site would be sitting on a Linux server running PHP and MySQL. I'm currently trying to find out if and how I can scrape this text from the documents. If anyone can suggest a good way of going about doing this it would be much appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
从新的 docx 格式中抓取文本非常简单。该文件本身只是一个 zip 文件,如果你查看其中,你会发现一堆 xml 文件。文本包含在该 zip 文件内的 word/document.xml 中,并且所有实际用户输入的文本将出现在中。标签。如果您提取出现在中的所有文本,标签,你就会刮掉文档。
Scraping text from the new docx format is trivial. The file itself is just a zip file, and if you look inside one, you will find a bunch of xml files. The text is contained in word/document.xml within this zip file, and all the actual user-entered text will appear in <w:t> tags. If you extract all text that appears in <w:t> tags, you will have scraped the document.
这是一个使用 catdoc 的好例子:
来源
Here's a good example using catdoc:
Source