Python Iterator帮助+ 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()
正如您所看到的,for循环在我预先设置的次数之后停止。我希望for循环只有在打印完所有内容后才会停止。
解决方案
CSSSelector.cssselect()方法返回一个iterable,所以你可以这样做:
for element in selector:
print element.text_content()
其他提示
怎么样?
for e in selector:
print e.text_content()
我希望你想要一个for循环,如:
selectors = website.cssselect('.name , .name, .desc')
for selector in selectors:
print selector.text_content()
不隶属于 StackOverflow