python - 在 scrapy 的 xPath 选择器中使用 python 变量

标签 python xpath scrapy

我想选择他们的text包含bar的元素。我有一个名为 foo 的 python 变量,它的值是 "bar" 我想像这样使用它:

foo = "bar"
response.xpath('//*[contains(text(), foo)]')

但是它返回了所有的元素!有什么问题?

最佳答案

你试过吗:

foo = "bar"
response.xpath('//*[contains(text(), "'+foo+'")]')

?

这是 Mathiou 的答案和 contains 的正确 XPath 表达式的组合。不要忘记即使在 XPath 表达式中您也在处理一个字符串,您必须告诉它您有一个字符串。

关于python - 在 scrapy 的 xPath 选择器中使用 python 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33169206/

相关文章:

python - 使用 Pandas 求解多个线性方程

c# - XPath 不适用于 SelectSingleNode

python - Scrapy - 在解析回调之外生成项目

python - pygame中物体的速度?

python - 如何从 python 脚本更改 python 文件中的变量值

python - 当您不知道计数时访问字典内列表中的值

html - 需要一个 xpath 在某个元素第一次出现之前找到特定类型的所有元素

xml - 读取包含命名空间 PowerShell 的 XML 文件

python - 无法从 Scrapy 脚本启动 Firefox,但可以从命令行正常运行

google-app-engine - 谷歌应用引擎支持 scrapy 吗?