python安装python-docx失败?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python安装python-docx失败?相关的知识,希望对你有一定的参考价值。

在pycharm上安装python-docx,显示超时,路径不对

参考技术A pip源的问题,默认的pip源大多都是国外的,网络很慢或者根本下不下来。
你把pip源改成国内的,可以搜索:windows系统更改默认pip源
度娘上应该有很多方法,我只改过linux系统的。追问

错误又变成了这个····麻烦您再看看,谢谢~

追答

错误显示: Microsoft Visual C++ 14.0 is required

你需要根据它的提示安装VC14.0,安装后你再尝试一下。

另外,确保你pip的版本跟python的版本一致哈,因为python2和python3区别较大,你不能用pip2来安装python3 的库

参考技术B 超时一般和网络有关 不是你本地的问题
你把log的最后几行错误贴一下追问

追答

这个是网络问题(国内防火墙你懂的)
可以搜一下pypi国内镜像(很多),自己看怎么用

追问

错误又变成了这个····麻烦您再看看,谢谢~

页码python-docx

我试图在python中创建一个程序,可以在.docx文件中找到特定的单词并返回它发生的页码。到目前为止,在查看python-docx文档时,我一直无法找到如何访问页码或甚至是数字所在的页脚。有没有办法使用python-docx或甚至只是python?或者如果没有,最好的方法是什么?

答案

简短的回答是否定的,因为分页符由呈现引擎插入,而不是由.docx文件本身确定。

但是,某些客户端在保存的XML中放置一个<w:lastRenderedPageBreak>元素,以指示它们在上次呈现时中断页面的位置。

我不知道这是做什么的(虽然我希望Word本身可以做到)以及它有多可靠,但如果你想在Python中工作,这就是我推荐的方向。您可以使用python-docx获取对所需lxml元素的引用(如w:document/w:body),然后使用XPath命令或某些东西迭代到特定页面,但只是稍微考虑一下它将是一些详细的开发那里有工作。

如果您使用本机Windows MS Office API,您可能能够获得更好的东西,因为它实际上运行Word应用程序。

如果您在python-docx中生成文档,则不会放置这些元素,因为它不会尝试呈现文档(也不可能)。我们也不太可能很快添加对w:lastRenderedPageBreak的支持;我甚至不确定那会是什么样子。

如果您搜索'lastRenderedPageBreak'和/或'python-docx分页符',您会在这里看到其他问题/答案,可能会提供更多。

另一答案

使用Python-docx: identify a page break in paragraph

from docx import Document
fn='1.doc'
document = Document(fn)
pn=1    
import re
for p in document.paragraphs:
    r=re.match('Chapter \d+',p.text)
    if r:
        print(r.group(),pn)
    for run in p.runs:
        if 'w:br' in run._element.xml and 'type="page"' in run._element.xml:
            pn+=1
            print('!!','='*50,pn)

以上是关于python安装python-docx失败?的主要内容,如果未能解决你的问题,请参考以下文章

python操作word文档(python-docx)

python-docx 中文个人翻译

Python实现自动化办公:Python对Word文档的基本操作(python-docx)

说说 python-docx 解析 word 文档的原理

python-docx库的使用

Python-docx和保留格式