0
我是菜鸟,想用scrapy框架抢东西,但我有麻烦:如何在使用XPath和CSS选择器功能
HTML中:
<ul class="tip" id="tip1">
<li id="tip1_0">
<a href="http://***" title="***" target="_self">***
</a>
</li>
<li id="tip1_1">
<a href="http://***" title="***" target="_self">***
</a>
</li>
<li id="tip1_2">
<a href="http://***" title="***" target="_self">***
</a>
</li>
</ul>
我用:
f = response.xpath("//*[@id='tip1']//li/a/@href | //*[@id='tip1']//li/a/@title").extract()
当我得到的f是一个列表,我会改变列表(F)与dict(NAME0 = F [0],value0 = F [1],NAME1 = F [2],值1 = [f3],依此类推)。有什么办法更容易?
的Html B:
<div class="info">
<a target="_blank" href="***" title="***">
</a>
</div>
<div class="info">
<a target="_blank" href="***" title="***">
</a>
</div>
<div class="info">
<a target="_blank" href="***" title="***">
</a>
</div>
在这种情况下:
file = response.xpath('//div[@class="info"]')
for line in file:
f = line.xpath('/a/@href').extract()
d = line.xpath('/a/@title').extract()
但是,它不工作,只是返回 'F = []' 和 'd = []',那么,我很困惑,我该如何解决这个问题?非常感谢。