获得;XPath错误:无效谓词";,尝试使用包含希腊字母的Xpath时
从这个网页:我正在尝试构建一个爬虫程序,它将从∏εριχή:“字段”中提取“ακεΔεΔΓνα>αθ.αθα>Δ.Δοβρ” -->请参见该项目的屏幕截图: 见下文链接2 为了做到这一点,我打算使用XPath来关注“Μεροοχή:”然后使用下面的兄弟关键字来访问和提取文本“ΜακεεΔεεεΔνενα>Ν.Ημαθθας>Δ.Δοβρ”,因为包含它的td可以在其他网页中的不同位置(但总是在带有文本的tr之后)“ε∏ριοχή:”)甚至缺失。 见下文链接3获得;XPath错误:无效谓词";,尝试使用包含希腊字母的Xpath时,xpath,unicode,scrapy,Xpath,Unicode,Scrapy,从这个网页:我正在尝试构建一个爬虫程序,它将从∏εριχή:“字段”中提取“ακεΔεΔΓνα>αθ.αθα>Δ.Δοβρ” -->请参见该项目的屏幕截图: 见下文链接2 为了做到这一点,我打算使用XPath来关注“Μεροοχή:”然后使用下面的兄弟关键字来访问和提取文本“ΜακεεΔεεεΔνενα>Ν.Ημαθθας>Δ.Δοβρ”,因为包含它的td可以在其他网页中的不同位置(但总是在带有文本的tr之后)“ε∏ριοχή:”)甚至缺失。 见下文链接3 在scrapy shell中,我正在
在scrapy shell中,我正在测试以下内容:
x = response.xpath(u"//th[@text()=u'Περιοχή:']/text()").extract()
期望得到x=[u”εριοχή:“]
但我得到的却是一个错误:
ValueError: XPath error: Invalid predicate in //th[@text()=u'\u03a0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae:']/text()
我做错了什么
提前感谢。您指定了两次unicode编码,不应该在xpath中指定,因为它已经是unicode字符串 i、 e 请注意,文本前面没有
u
,您也不需要@beforetext()
,因为它是一个xpath函数而不是节点属性。Link no.2:Link no.3:
# this:
u"//th[@text()=u'Περιοχή:']/text()"
# should be this:
u"//th[text()='Περιοχή:']/text()"