我想从此页面的主要注释根据您的投票部分中提取@title
:https://www.fragrantica.com/perfume/Remy-Latour/Cigar-9351.html
我已经获取了HTML,然后在scrapy shell
上尝试了这一行代码,但输出为None
:
response.xpath('//*[@id="userMainNotes"]/div/img/@title).extract_first()
我在做什么错了?
答案 0 :(得分:2)
如果您查看源代码(Ctrl+U
),则会发现:
<div title="96:241;171:117;33:103;34:103;41:70;128:63;4:59;182:59;170:58;75:56;191:48;21:39;77:39;14:28" id="userMainNotes">Loading...</div>
这意味着<div>
以上是由Javascript渲染的,这就是您的代码不起作用的原因。
答案 1 :(得分:0)
这将起作用
response.xpath('//span[contains(@id, "note")]/img[@rel]/@title')
不要忘记将USER AGENT设置为您的settings.py