使用lxml解析iframe
问题描述:
我正在从<iframe>获取数据。 然后,我想从<iframe>使用lxml
获得数据。使用lxml解析iframe
我没有找到任何可用的资源<iframe>来自lxml
。
任何人都可以帮助我让我知道我该如何实现它?
答
您可以从iframe
提取src
属性,然后通过urllib
获取从URL数据,最后再使用lxml
分析这些数据。
示例代码(未测试):
from lxml.etree import fromstring
data = urllib.urlopen(url) # fetching url with iframe
tree = fromstring(data.read()) # parsing tree to get src attribute
src_url = tree.cssselect("iframe").attrib['src']
data = urllib.urlopen(src_url) # open iframe src url
tree = fromstring(data.read()) # parsing iframe tree
答
我们必须从iframe
发现src
属性,然后请求LIB从src
网址提取数据。
import lxml.html as lh
import requests
rq= requests.get(url)
content = rq.content
doc = lh.fromstring(content)
for i, elt in enumerate(doc.xpath('//[@id="page_content"]/div[2]/div/div/iframe')):
url_data = elt.attrib.get('src')
data = requests.get(url_data).content)
我们必须使用什么来从iframe中获取src? – sam 2012-04-16 12:55:41
lxml可以打开网址 – MattH 2012-04-16 12:59:32
添加示例代码。 – methyl 2012-04-16 13:01:49