Scrapy 中 contains(@attribute) 时的多个条件
Multiple conditions when contains(@attribute) in Scrapy
例如,如果我想查找 link 标签 应用程序类型 "application/javascript" 或 "application/ecmascript",我想做这样的事情:
response.xpath("head/link[contains(@type, "javascript", "ecmascript")]")
不用说,我放在上面的代码会引发异常。
但是我还没有找到可以帮助我在一个 XPath 查询中应用多个条件的方法。
试试这个:
response.xpath("head/link[@type[contains(., 'javascript') or contains(., 'ecmascript')]]")
注意不要在代码和 XPath 中使用相同的引号。
例如,如果我想查找 link 标签 应用程序类型 "application/javascript" 或 "application/ecmascript",我想做这样的事情:
response.xpath("head/link[contains(@type, "javascript", "ecmascript")]")
不用说,我放在上面的代码会引发异常。
但是我还没有找到可以帮助我在一个 XPath 查询中应用多个条件的方法。
试试这个:
response.xpath("head/link[@type[contains(., 'javascript') or contains(., 'ecmascript')]]")
注意不要在代码和 XPath 中使用相同的引号。