小编APE*_*APE的帖子

在python中迭代xml元素时遗漏了一些文本

我在Mac OS X 10.6.8上的Python 2.7.3中运行以下代码.

import StringIO
from lxml import etree
f = open('./foo', 'r')
doc = ""
while 1:
    line = f.readline()
    doc += line
    if line == "":
        break
tree = etree.parse(StringIO.StringIO(doc), etree.HTMLParser())
r = tree.xpath('//foo')
for i in r:
    for j in i.iter():
        print j.tag, j.text
Run Code Online (Sandbox Code Playgroud)

文件foo包含

<foo> AAA <bar> BBB </bar> XXX </foo>
Run Code Online (Sandbox Code Playgroud)

输出是

foo AAA
bar BBB
Run Code Online (Sandbox Code Playgroud)

为什么我没有收到文字XXX?我该如何访问它?

谢谢

python xml xpath lxml

3
推荐指数
2
解决办法
786
查看次数

在python中:使用带有'with'关键字的文件路径列表

如果我想使用两个文件我可以写:

with open(fname1, 'r') as f1, open(fname2, 'r') as f2:
    # do stuff with f1 and f2
Run Code Online (Sandbox Code Playgroud)

但是,如果我有一个路径列表(例如,来自glob.glob)怎么办?我可以在列表理解中做类似的事情吗?我想到的是:

with [open(path, 'r') for path in paths_list] as flist:
    # do stuff with this list of open file objects
Run Code Online (Sandbox Code Playgroud)

如上所述,这不起作用.

python

3
推荐指数
2
解决办法
144
查看次数

是否有一个python包来执行WWW :: Mechanize在perl中的功能?

是否有一个python包可以处理perl中WWW :: Mechanize所涵盖的相同任务?

python perl www-mechanize

0
推荐指数
1
解决办法
130
查看次数

标签 统计

python ×3

lxml ×1

perl ×1

www-mechanize ×1

xml ×1

xpath ×1