我正在使用scrapy,我試圖尋找包含特定文本的跨度。我有:帶有文本()的Scrapy Xpath包含
response.selector.xpath('//*[@class="ParamText"]/span/node()')
返回:
<Selector xpath='//*[@class="ParamText"]/span/text()' data=u' MILES STODOLINK'>,
<Selector xpath='//*[@class="ParamText"]/span/text()' data=u'C'>,
<Selector xpath='//*[@class="ParamText"]/span/text()' data=u' MILES STODOLINK'>]
然而,當我運行:
>>> response.selector.xpath('//*[@class="ParamText"]/span[contains(text(),"STODOLINK")]')
Out[11]: []
爲什麼包含的功能無法正常工作?
謝謝,我可以問一下'。'意味着這裏。我在「正則表達式」中猜測「任何字符」? – user61629
它是對元素本身的引用。另外,'..'是對元素父元素的引用;它們像* nix系統(Linux,Mac等)文件路徑一樣工作,其中「。」是當前目錄,'..'是父目錄。 –