Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 我想为以黄色突出显示的按钮识别正确的代码_Excel_Vba_Selenium Webdriver_Checkbox_Selenium Chromedriver - Fatal编程技术网

Excel 我想为以黄色突出显示的按钮识别正确的代码

Excel 我想为以黄色突出显示的按钮识别正确的代码,excel,vba,selenium-webdriver,checkbox,selenium-chromedriver,Excel,Vba,Selenium Webdriver,Checkbox,Selenium Chromedriver,我怎么才能弄明白呢?我是硒的新手 活体动物 体内人 体外工作 不适用 这个代码对我很有用: from selenium.webdriver.support.ui import Select from selenium.webdriver.common.keys import Keys from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager driver = webdri

我怎么才能弄明白呢?我是硒的新手


活体动物
体内人
体外工作
不适用

这个代码对我很有用:

from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(ChromeDriverManager().install())

driver.get(r"C:\tmp\seltest.htm")

driver.find_element_by_xpath("//*[@id='InVivoVitroWorkcheckboxDiv']/div[2]/input").click()  
输出(无类)


您单击活体人类的原因是,您没有识别4个复选框中的任何一个,而是识别了包含所有4个复选框的父Div。由于活体内的人类处于div的中间位置,因此单击此处

要正确单击任何复选框,您必须为此编写唯一的定位器。例如,如果要单击体外工作,ypu可以编写唯一的xpath定位器:

VBA:

Dim obj as new webdriver
obj.start "Chrome"
obj.get "file:///C:/Users/rahul/OneDrive/Desktop/abc.html"
obj.FindElementByXPath("//div[input[@value='In Vitro Work']]").Click
Python

from selenium import webdriver
driver = webdriver.Chrome('..\drivers\chromedriver')
driver.get("file:///C:/Users/rahul/OneDrive/Desktop/abc.html")
driver.maximize_window()
driver.find_element_by_xpath("//input[@value='In Vitro Work']").click()
Java

System.setProperty("webdriver.chrome.driver","C:\\user\\rahul\\chromedriver.exe");  
WebDriver driver=new ChromeDriver();
driver.get("file:///C:/Users/rahul/OneDrive/Desktop/abc.html");
driver.findElement(By.xpath("//input[@value='In Vitro Work']")).click();
输出:

Dim obj as new webdriver
obj.start "Chrome"
obj.get "file:///C:/Users/rahul/OneDrive/Desktop/abc.html"
obj.FindElementByXPath("//div[input[@value='In Vitro Work']]").Click

您可以浏览下面的文章,了解有关使用SeleniumWebDriver唯一定位元素的更多信息。

如果帖子内容混乱,请原谅。我正试图将点击“体外工作”按钮设置为附件,但我无法做到这一点。当我尝试obj.FindElementById(“InVivoVitroWorkcheckboxDiv”)时,单击它单击“体内人类”按钮,但我想单击“体外工作”。抱歉,如果格式不正确。感谢您在这方面的帮助,抱歉的朋友,首先,他要求使用VBA解决方案(见标签)他还想选择InVitro Work复选框,而不是Vivo Work。感谢@Mike67花时间帮助我,但我正在使用VBA,不幸的是,即使在我尝试使用XPath时,我仍收到以下错误“Selenium error element click intercepted”。嗨,Rahul,非常感谢你花时间回答我。非常感谢!谢谢你帮我定位。我认为问题在于,即使我到达正确的位置,我也会收到以下错误消息-Selenium error element click intercepted:element在点(304507)处不可单击。其他元素也会收到点击:我也尝试过等待页面完全加载并最大化窗口,但一切都加载良好,不确定我要去哪里wrong@Tikku由于您的输入标记位于Div标记内,因此可能会抛出错误。你能把你的输入标签包装在div里吗,如下://div[input[@value='Invitral Work']]我已经更新了VBA代码,现在试试吧。这真是太棒了!它就像一个符咒,并帮助我解决了一些其他按钮以及。你刚刚解决了我的头痛问题。无论你做什么,我都祝福你。非常感谢,祝你度过愉快的一天!顺便说一句,我不知道如何关闭这个线程,这个问题已经解决了。干杯