当我试图将元素放入元素中时,我面临一个问题。我尝试了两种方法来实现这一点,但不幸的是没有成功。
element_list = driver.find_elements_by_xpath("//div[@class='WGGO WKFO']//ul//li[@class='WO0F WHHO WI5 WF2F']//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']")
上面的代码获取所有DOM元素列表。
方法1:
for element in element_list:
element_text = element.find_element_by_xpath("//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']").text
print(element_text)
当我尝试这个方法时,它总是返回第一个元素的文本,而不是相应的元素文本。
在搜索时,我发现了一个链接,有人问了和我一样的问题。
Selenium Webdriver在子元素中查找元素
当我尝试p0deje的
答案时,它给了我一个空白数组。
element_text = element.find_elements_by_xpath(".//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']").text
结果:[]
请建议我如何实现这一点,如何在元素中获得元素细节?
element_list
已经包含了所有要打印的元素,即element_文本
。您不能使用WebElement
来定位自身,它之所以没有在NoSuchElementException
中失败,是因为当使用xpath
从另一个元素定位元素时,您需要指定当前上下文
find_element_by_xpath('.//div')
遍历
element_list
for element in element_list:
print(element.text)
或者,如果您真的想拆分它,因为您可以使用父列表上的更多操作(注意,她缩短了
element_list
xpath
)
element_list = driver.find_elements_by_xpath("//div[@class='WGGO WKFO']//ul//li[@class='WO0F WHHO WI5 WF2F']")
for element in element_list:
element_text = element.find_element_by_xpath(".//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']").text
print(element_text)
这一行代码的问题:element_text=element.find_elements_by_xpath(".//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']"). text
ist查找元素重新调用列表,列表没有. text属性。尝试遍历返回的列表:
elements = driver.find_elements_by_xpath("//div[@class='WGGO WKFO']//ul//li[@class='WO0F WHHO WI5 WF2F']//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']")
#as a list comprehention
element_text= [element.text for element in elements]
#or as a for loop
element_text=[]
for element in elements:
element_text.append(element.text)
我正在寻找提取表中的数据,我已经找到做以下工作: 从我得到的球员 现在我想检索表中的数据。我该怎么做? 编辑:我应该说,当我这样做的时候 我得到
我对使用Python的Selenium是新手。我正在尝试获取一些数据,但我不知道如何解析来自以下命令的输出: 我试图在谷歌上搜索一些教程,但我没有找到Python的任何内容。 你能给我个提示吗?
问题内容: 我有一个多维数组,我想获取围绕该数组中特定元素的元素。 例如,如果我有以下内容: 如何找到以上任何一个元素中的所有8个元素?以及如何处理边缘的元素? 我发现的一种方法是为此编写9行代码,这很明显,但是有更好的解决方案吗? 问题答案: for (i = 0; i < array.length; i ) { for (j = 0; j < array[i].length; j ) { fo
我将硒与python中的Chrome驱动程序一起使用。 我的问题是,硒给我一个错误,因为我试图访问铬下载页面上的元素(铬://下载)。例如,我试图获取文件url"http://file.jpg"。 但当我试图通过其id获取元素时,我得到了一个异常。 代码: 例外情况: 通过 使用 javascript 对我也不起作用。为什么当我可以在浏览器中看到元素时,我会收到 ?
环境:Eclipse-Java-Junit-Firefox web driver 屏幕截图网址 : https://www.dropbox.com/s/26fl2l1y1mkpxiz/Screenshot 2014-01-06 01.52.43.png 我试图测试一个网页,但找不到元素(看起来像按钮)。Firebug的xpath是:<code>/*〔@id='DERIVED_REGFRM1_LIN
我正在为android应用程序定位元素,并有一个查询。我存储的web元素列表如下 但这并不奏效。非常感谢任何帮助。