如何让chrome提供的xpath提取正确的文本而不是空字符串?

如何让chrome提供的xpath提取正确的文本而不是空字符串?,xpath,scrapy,Xpath,Scrapy,我正试图从上抓取财产数据 我在表中确定了我对基区数据感兴趣的元素,并从chrome开发者工具复制了xpath。当我在scrapy中运行时,我得到一个空列表 我使用scrapy shell上传网站,并键入了几个响应请求。页面加载,我可以刮去页眉,但是页面加载的主体中没有任何内容,所有内容都显示为空列表 我的草稿如下: class ZoneSpider(scrapy.Spider): name = 'zone' allowed_domains = ['web'] start_

我正试图从上抓取财产数据

我在表中确定了我对基区数据感兴趣的元素,并从chrome开发者工具复制了xpath。当我在scrapy中运行时,我得到一个空列表

我使用scrapy shell上传网站,并键入了几个响应请求。页面加载,我可以刮去页眉,但是页面加载的主体中没有任何内容,所有内容都显示为空列表

我的草稿如下:

class ZoneSpider(scrapy.Spider):
    name = 'zone'
    allowed_domains = ['web']
    start_urls = ['http://web6.seattle.gov/DPD/ParcelData/parcel.aspx? 
pin=9906000005']

def parse(self, response):
    self.log("base_zone: %s" % response.xpath('//*[@id="ctl00_cph_p_i1_i0_vwZoning"]/tbody/tr/td/table/tbody/tr[1]/td[2]/span/text()').extract())
    self.log("use: %s" % response.xpath('//*[@id="ctl00_cph_p_i3_i0_vwKC"]/tbody/tr/td/table/tbody/tr[3]/td[2]/text()').extract())
您将看到日志返回一个空列表。在scray shell中,当我使用xpath查询标头时,我得到了一个有效的响应:

response.xpath'/*[@id=ctl00\u headSection]/title/text'.extract ['\r\n\t附件地块数据\r\n']

但当我查询身体中的任何东西时,我会得到一个空列表:

response.xpath'/body'.extract []

我希望在我的scrapy代码中看到如下响应:

基本分区:SF 5000

用法:Duplex

如果从XPATH中删除tbody,它将起作用

由于开发人员工具在实时浏览器DOM上运行,因此 实际上,当检查页面源代码不是原始HTML时, 但在应用一些浏览器清理并执行 Javascript代码。尤其是Firefox,它以添加 将元素添加到表中。另一方面,Scrapy不会修改 原始页面HTML,因此如果 在XPath表达式中使用


来源:

谢谢,问题解决了。是否可以在不修改浏览器的情况下加载页面/访问原始html的最佳方式是什么?