Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 残缺,xpath无效,起始位置_Python_Xpath_Scrapy - Fatal编程技术网

Python 残缺,xpath无效,起始位置

Python 残缺,xpath无效,起始位置,python,xpath,scrapy,Python,Xpath,Scrapy,我正在尝试使用scrapy,我有一个可笑的html,我正在尝试它。使用Xpath Checker firefox插件,这是表中的第一行: id('page')/x:table/x:tbody/x:tr[1]/x:td[2]/x:table/x:tbody/x:tr/x:td/x:table/x:tbody/x:tr[1] 如果将该xpath复制到以下位置,则会出现错误: def parse(self, response): hxs = HtmlXParseSelector(respo

我正在尝试使用scrapy,我有一个可笑的html,我正在尝试它。使用Xpath Checker firefox插件,这是表中的第一行:

id('page')/x:table/x:tbody/x:tr[1]/x:td[2]/x:table/x:tbody/x:tr/x:td/x:table/x:tbody/x:tr[1]

如果将该xpath复制到以下位置,则会出现错误:

def parse(self, response):
      hxs = HtmlXParseSelector(response)
      data = hx.select("id('page')/x:table/x:tbody/x:tr[1]/x:td[2]/x:table/x:tbody/x:tr/x:td/x:table/x:tbody/x:tr[1]")
raisevalueerror(“无效的XPath:%s”%XPath)

为什么它不能识别这个xpath


另外,scrapy是否有办法从第三行及以后获取所有数据?前两行只是标题和图例。

Firefox添加了一个html标记“tbody”,但实际上html可以没有它。试着用你的程序获取html页面,看看标签“tbody”在哪里。我在Firefox中也遇到了同样的问题。

如果你能提供一个链接到你要刮取的页面,我们可能会提供帮助。:)你注册了吗?只有一个建议-使用Firebug或Chrome Developer而不是Firefox Xpath Checker我对Chrome在路径中添加“tbody”也有同样的问题,但scrapy没有意识到这一点。解决办法就是去掉“托比”。