我需要帮助通过Xpath使用Python传递谓词中的变量以进行Web抓取。
Xpath谓词路径示例:
//*[@id="rev_exp_div_1370887"]/table[1]/tbody/tr[1]/td
不工作谓词变量
by_xpath('//*[@id="rev_exp_div_1370887"]/table["' + str(x) + '"]/tbody/tr[1]/td').text
代码通过语法检查并成功运行,但实际上并没有点击正确的表(实际上是任何表),即使x在我用print x检查它时返回正确的值。当然,如果我对代码中的值进行硬编码(在代码的顶行显示),那么我知道路径至少是正确的。
欢迎和赞赏的想法,意见或建议。
答案 0 :(得分:2)
您的/table["' + str(x) + '"]
不需要"。
请尝试/table[' + str(x) + ']
。