如何处理动态更改的xpath ID?

时间:2018-10-08 11:33:51

标签: python selenium web-scraping

我正在研究LinkedIn的抓取项目。我使用硒和铬驱动程序。使用我的凭据登录后,该脚本将搜索python程序员。

people = driver.find_element_by_xpath('//*[@id="ember5453"]/ul/li[1]/button')
people.click()  

以上代码应从(人员,公司,职位,内容,组)中选择人员,但此方法无效。问题出在xpath id上,它会动态更改。

1 个答案:

答案 0 :(得分:0)

您使用的xpath包含一些随机生成的数字,该数字在每次页面加载时都会更改,请尝试使用没有此类ID的动态xpath。

一个简单的解决方案是在创建xpath时使用textcontains,parent,child等概念。

您可以参考https://www.guru99.com/xpath-selenium.html了解更多信息。

您可以使用//input[@placeholder="Search"]代替//*[@id="ember5453"]/ul/li[1]/button