XPath新手(通过Scrapy),但取得了一些非常好的快速成功。然而,难以置信;这是我追求的节点:
<a href="/pg/gaa/main/ref=gorgz_merch_name_3?ie=UTF8&gorgzin=B0002523QW&isGorgonzolaFulfilled=0&seller=A1YEWN0HLL15CJ">Blusterfields</a>
似乎这应该基于我的其他实验工作:
response.xpath('//a[contains(@href, "gorgz_merch_name")]/text()').extract()
...但它会返回zilch。
奇怪的是,
response.xpath('//a[contains(@href, \'/pg/gaa/main\')]/text()').extract()
... 返回“Blusterfields”(以及我之后的其他项目)。哪个会好的,我想,但是我还有另一个数据点:
<a href="/pg/gaa/main/ref=gorgz_merch_rating_3?ie=UTF8&gorgzin=B0002523QW&isGorgonzolaFulfilled=0&seller=ASDFOASDFU><b>97% positive</b></a>
所以我使用的Xpath似乎应该捕获两者,但不是。并不是说我希望它能同时捕捉到这两种情况,但这只是另一个因素增加了我的困惑。
理想情况下,我会用以下内容来捕捉后者:
response.xpath('//a[contains(@href, "gorgz_merch_rating")]/text()').extract()
......但不用说,那也没有用。
非常感谢任何指导/提示。