繁体   English   中英

Scrapy-Scrapy不从html标记返回信息

[英]Scrapy — scrappy not returning information from a html tag

我正在尝试抓取网站,我正在抓取scrapy,但是当我抓取html数据,获取任何数据所需的html标签时,我正在使用xpath来获取此标签的数据但这什么也没返回

这个网站(“ http://www.exito.com/products/0000293501259261/Arroz+Fortificado?cid=&page= ”),这是我抓取的HTML的一部分

<div class="pdpInfoProductPrice">
    <meta itemprop="currency" content="COP">
<h4 itemprop="price" class="price">
   $5.350</h4>
</div>

我需要在标签h4上使用scrapy来获取价格,但是当我只进行获取时,该类为空,该类内没有任何标签。这应该是一件简单的事情,但是我无法获取价格以任何方式

我在页面上使用了一些xpath,因为我可以获得价格

sel.xpath('[@id="plpContent"]/div[3]/div[5]/h4').extract()
sel.xpath('//*[@id="atg_store_two_column_main"]/div[2]').extract()
//*[@id="mainWhiteContent"]/div[2]/div[1]/div[1]/div[1]/div[3]/div[1]/div/h4

尝试使用此xpath:

sel.xpath("//div[@id='mainWhite']/div[@id='mainWhiteContent']/div[@class='row-fluid'][2]/div[@class='span9 widthCarulla']/div[@class='row-fluid']/div[@class='pdpProduct span12']/div[@class='pdpInfoProduct pull-left']/div[@class='pdpInfoProductPrices']/div[@class='pdpInfoProductPrice']/h4[@class='priceOffer']/text()").extract()

在第一个请求中,网页会询问您的地区并将其存储在Cookie中。

示例对话框

您可以通过删除Cookie或使用其他浏览器/专用浏览会话来重现此内容。

要解决此问题,您将必须发送名称为selectedCity的Cookie和区域代码(例如AR 创建请求时,请使用如下所示的内容:

request = Request(
            url="http://www.exito.com/products/0000293501259261/Arroz+Fortificado?cid=&page=",
            cookies={'selectedCity': 'AR'}
          )

对于XPath表达式,我会选择

//div[@class='pdpInfoProductPrice']/h4[@itemprop='price']/text()

还请考虑以下有关匹配HTML类的答案: 使用xpath选择一个CSS类

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM