-1

怎么了?拜托,有人说我,我必须写什么而不是 application/x-abiwordAbiWord。

Python 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.

>>> f=open('a.abw','r').read()
>>> from lxml import etree
>>> doc=etree.fromstring
>>> from lxml import html
>>> doc=html.fromstring
>>> doc
<function fromstring at 0x0113B858
>>> print(''.join(doc.xpath('//text()'))
      application/x-abiwordAbiWord

SyntaxError: invalid syntax
4

1 回答 1

1

您在 print 语句中缺少一个近义词。另外,除非我大错特错,否则您的 fromstring 函数缺少括号和参数;根据python参考,函数签名需要xml.etree.ElementTree.fromstring(text)

就目前而言,您似乎正在将对函数“fromstring()”的引用分配给“doc”。您不能在函数引用上调用“.xpath()”。

编辑:试试这个。编辑2:试图澄清以回应OP评论

1:将此代码粘贴到一个空文档中:

MY_FILE_NAME = "path/to/my/file.abw"
# MY_FILE_NAME = "C:\\path\\to\\my\\file.abw" ## use this on windows

from lxml import etree
from lxml import html
import os

f=open(MY_FILE_NAME,'r')
myStr = f.read()
f.close()

doc=etree.fromstring(myStr)
doc=html.fromstring(myStr)

text = ''.join(doc.xpath('//text()'))

f = open(os.environ["HOME"] + "output.txt",'w')
f.write(text)
f.close()

2:将文档另存为recover.py

3:在python中运行脚本

4:???

5:利润!(又名,你的故事现在应该在你的主目录的 output.txt 中)


注意:你到底想做什么?如果您给我们一个精确的问题/任务,人们将能够更好地帮助您。还要尝试描述您已经尝试过的内容 - SO 不应该是人们免费为您工作的地方,因此重要的是要表明您付出了一些努力来解决/研究您的问题。

于 2012-08-23T10:51:22.973 回答