分析时Python Webdriver出现意外的EOF(<string>,第1行)

2024-03-29 14:59:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Python和webdriver

我试图用xpath和get定位带有find元素的元素:“解析时出现意外的EOF(,第1行)”

当我试图通过查找类名为的元素来定位它时,它工作得很好。在

问题是我不能使用它,因为我有几个同名的类。在

以下是xpath:

//*[@id="j_id0:j_id5:j_id6:j_id36"]/div/div/div[2]/div[2]/div[2]/ul/li[1]/div/svg/g/g[1]/path[1]

这是类名:st0

这是我的代码行:

^{pr2}$

-这不起作用

ddd = self.SELENIUM_DRIVER.find_element_by_class_name('st0')

-哪个有效

这是html:

提前谢谢


Tags: 定位divid元素getfindxpathwebdriver
2条回答

下面的查询将查找父树为div/svg/g/g[1]、类等于st0、索引为[1]path

self.SELENIUM_DRIVER.find_element_by_xpath('//div/svg/g/g[1]/path[@class=st0][1]')

如果父树在以前是唯一的,则最好缩短查询时间,例如:

^{pr2}$

我认为这是您提供的Id j_id0:j_id5:j_id6:j_id36的问题所在,正如您所说的类名对于其他一些元素也是相同的,所以您应该尝试使用xpath,方法是传递索引,如下所示:

self.SELENIUM_DRIVER.find_element_by_xpath('(//path[@class=st0])[1]')

现在您可以通过更改索引值来定位您的desire元素。在

希望它能起作用…:)

相关问题 更多 >