gpt4 book ai didi

python - 如何使用Scrapy获取Html OnClick参数

转载 作者:行者123 更新时间:2023-12-01 02:40:42 24 4
gpt4 key购买 nike

我想从链接 http://www.yad2.co.il/Nadlan/sales.php?City=%E1%F0%E9%EE%E9%F0%E4+%E2% $ 中提取 NadLanID 值

我使用Firebug检查了我要提取的html代码,NadlanId值位于: ojit_代码

我使用以下Scrapy代码来检查Scrapy是否解析上面的html代码:

import scrapy

class QuotesSpider(scrapy.Spider):
name = "quotes"
start_urls = [
'http://www.yad2.co.il/Nadlan/sales.php?City=%E1%F0%E9%EE%E9%F0%E4+%E2%$
]

def parse(self, response):
page = response.url.split("/")[-2]
filename = 'quotes-%s.html' % page
with open(filename, 'wb') as f:
f.write(response.body)`

但是response.body中没有NadlanId。

如何获取 NadlanId 值?

最佳答案

在本例中,您希望从 html onclick 属性中检索 javascript 函数参数。

首先我们找到整个 onclick 文本:

text = response.xpath("//td/@onclick").extract_first()

然后就可以使用简单的正则表达式模式来查找函数参数:

# capture anything in between the () of show_ad
< re.findall("show_ad\((.+?)\)", text)[0].split(',')
>["'2'",
"'1'",
"'/Nadlan/salesDetails.php'",
"'NadlanID'",
"'1614569'",
"'644'"]

关于python - 如何使用Scrapy获取Html OnClick参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45753823/

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