Python迭代器帮助 + lxml
我有一个这样的脚本-
import lxml
from lxml.cssselect import CSSSelector
from lxml.etree import fromstring
from lxml.html import parse
website = parse('http://example.com').getroot()
selector = website.cssselect('.name')
for i in range(0,18):
print selector[i].text_content()
你可以看到,这个循环在我预先设定的次数后就停止了。我希望这个循环能在打印完所有内容后再停止。
3 个回答
2
那这个呢
for e in selector:
print e.text_content()
?
2
我想你可能需要一个像这样的循环:
selectors = website.cssselect('.name , .name, .desc')
for selector in selectors:
print selector.text_content()
5
CSSSelector.cssselect() 这个方法会返回一个可以逐个遍历的结果,也就是说你可以直接这样做:
for element in selector:
print element.text_content()