【发布时间】:2014-06-26 17:21:20
【问题描述】:
我需要从一些零售商产品页面中抓取一些 URL,但我需要获取的特定 URL 不在页面的 html 部分中。每个项目的 html 看起来都是这样的
<div id="name" class="hand bold" onclick="AVON.productcontrol.Go(45714);">ADVANCE TECHNIQUES Color Protection Conditioner Bonus Size</div>
我编写了以下代码来从页面中获取 URL,但是由于我需要的实际 URL 似乎没有存储在页面中,所以它没有得到我需要的:
def getUrls(URL):
"""input: product page url
output: list of urls to products
"""
connection = urllib.urlopen(URL)
dom = lxml.html.fromstring(connection.read())
selAnchor = CSSSelector('a')
foundElements = selAnchor(dom)
urlList = [e.get('href') for e in foundElements]
return urlList
有没有办法获得'onclick'之后的函数(我猜是AVON.productcontrol.Go(#);)带你去的链接?我不完全理解 html,虽然我读过一些关于 onclick 的内容,但我无法弄清楚 'onclick' 之后的函数是如何工作的。
【问题讨论】:
标签: html python-2.7 onclick web-scraping