首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Python中点击带有Selenium的图片?

如何在Python中点击带有Selenium的图片?
EN

Stack Overflow用户
提问于 2021-03-27 02:43:40
回答 2查看 53关注 0票数 1

我正在尝试单击此按钮,但该按钮实际上是一个没有ID的图像。

代码语言:javascript
运行
复制
WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((By.XPATH, "/html/body/table/tbody/tr[1]/td/a"))
).click()

但这并不能找到元素。任何帮助都是最好的!下面是相关的HTML

代码语言:javascript
运行
复制
<a class="navcontent" href=f5-h-$$/MSL/jsp/openGimPage.jsp?gimEnv=GIM&amp;ep=GIMV" target="blank>
<img onclick="F5_r2u();F5_Event_common(event);try{return(eval(F5_Invoke_eval_event(null,F5_jsBody(function(){parent.trackUserActivity(this,'o','Portlet : Incident Management '+(this.src).split('/images/')[1].split('.')[0]);
<p id="text" style="top: 7px">View</p></a>

编辑:下面是Remainder of HTML的其余部分

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-30 03:39:31

找到答案了。正如KunduK所指出的,它在iFrame中。我必须使用以下命令来选择iFrame,然后单击其中的按钮。

代码语言:javascript
运行
复制
driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))
driver.find_element_by_css_selector("body > table > tbody > tr:nth-child(1) > td > a")
票数 0
EN

Stack Overflow用户

发布于 2021-03-27 04:02:47

尝试使用xpath标识该元素。使用element_to_be_clickable()而不是presence_of_element_located()

代码语言:javascript
运行
复制
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//a[./p[text()='View']]"))).click()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66822694

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档