gpt4 book ai didi

Python Crawler - 检查 JavaScript 行是否存在,如果存在,则解析它

转载 作者:行者123 更新时间:2023-12-01 06:01:31 25 4
gpt4 key购买 nike

我正在使用 lxml.html 在 python 2.7 中抓取页面,我需要执行以下操作...

1) 查明该行是否在页面上。我实际上想看看parent_asin 是否存在。它并不出现在每个页面上。

DetailPage.StateController.setState('parent_asin', 'B0000DB87U');

2) 如果确实存在,如何获取B0000DB87U?当parent_asin 位于页面中时,每个页面的情况都会发生变化。这一切都在 javascript 中,我使用 lxml 来获取和解析 html。需要另一种 JS 方法。

最佳答案

可以使用lxml提取<script>的所有内容标签,然后用正则表达式解析它们。

未经测试的示例:

doc = lxml.html.parse(url)
scripts = doc.xpath('//script')
for script in scripts:
match = re.findall(r"DetailPage\.StateController\.setState\('parent_asin', '(.*)'\);", script.text)
if match:
print match[0]

关于Python Crawler - 检查 JavaScript 行是否存在,如果存在,则解析它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10201607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com