我到处搜索,我发现的最多的是doc.xpath('// element [@ class ="classname"]'),但无论我尝试什么,这都行不通.
我正在使用的代码
import lxml.html
def check():
data = urlopen('url').read();
return str(data);
doc = lxml.html.document_fromstring(check())
el = doc.xpath("//div[@class='test']")
print(el)
Run Code Online (Sandbox Code Playgroud)
它只是打印一个空列表.
编辑:有多奇怪.我使用谷歌作为测试页面,它在那里工作正常,但它不能在我使用的页面上工作(youtube)
这是我正在使用的确切代码.
import lxml.html
from urllib.request import urlopen
import sys
def check():
data = urlopen('http://www.youtube.com/user/TopGear').read(); #TopGear as a test
return data.decode('utf-8', 'ignore');
doc = lxml.html.document_fromstring(check())
el = doc.xpath("//div[@class='channel']")
print(el)
Run Code Online (Sandbox Code Playgroud)