Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.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
在python中使用selenium定位web元素_Python_Selenium_Xpath - Fatal编程技术网

在python中使用selenium定位web元素

在python中使用selenium定位web元素,python,selenium,xpath,Python,Selenium,Xpath,我正在尝试使用selenium在网页中查找元素。当我右键单击web元素并进行检查时,我可以在控制台中找到html代码。但是,当我从控制台复制同一元素的xpath并尝试在firepath中执行它时,它表示没有匹配的节点。为什么会这样?我怎样才能解决这个问题 下面是元素的HTML <input id="mobile" type="text" onchange="javascript:dispLocMob(this); "onkeydown="javascript:dispLocMob(this

我正在尝试使用selenium在网页中查找元素。当我右键单击web元素并进行检查时,我可以在控制台中找到html代码。但是,当我从控制台复制同一元素的xpath并尝试在firepath中执行它时,它表示没有匹配的节点。为什么会这样?我怎样才能解决这个问题

下面是元素的HTML

<input id="mobile" type="text" onchange="javascript:dispLocMob(this);
"onkeydown="javascript:dispLocMob(this);
"onkeyup="javascript:dispLocMob(this);" value="" maxlength=
"10" placeholder="Mobile Number" name="mobile">
请提供帮助。

当您可以通过唯一id查找元素时,为什么要使用xpath

当您可以通过唯一id查找元素时,为什么要使用xpath


我总是说去你的firebug,使用Chrome控制台

从外观上看,如果“id=mobile”是唯一的,那么获取此特定元素的最佳方法是以下两个选项之一

By.cssSelector("#mobile");
By.xpath("//input[@id = 'mobile']");
要使用chrome控制台->

启动铬 右键单击并检查图元。 您应该会看到html代码和控制台出现在下面。如果看不到控制台,请单击三个垂直点并选择“显示控制台” 现在,从这里你可以做一些很棒的事情!您可以搜索要识别的元素,并查看是否可以找到它们。例如,查看By.cssSelectormobile;你能打这个吗 document.querySelectorAllmobile

对于xpath,键入以下内容

$xBy.xpath//input[@id='mobile']


只是一个建议。。。如果你的代码能正常工作,不要担心firebug,在chrome上认真尝试一下这种方法

我总是说去你的firebug,使用Chrome控制台

从外观上看,如果“id=mobile”是唯一的,那么获取此特定元素的最佳方法是以下两个选项之一

By.cssSelector("#mobile");
By.xpath("//input[@id = 'mobile']");
要使用chrome控制台->

启动铬 右键单击并检查图元。 您应该会看到html代码和控制台出现在下面。如果看不到控制台,请单击三个垂直点并选择“显示控制台” 现在,从这里你可以做一些很棒的事情!您可以搜索要识别的元素,并查看是否可以找到它们。例如,查看By.cssSelectormobile;你能打这个吗 document.querySelectorAllmobile

对于xpath,键入以下内容

$xBy.xpath//input[@id='mobile']


只是一个建议。。。如果你的代码能正常工作,不要担心firebug,在chrome上认真尝试一下这种方法

标题是关于selenium的,但firepath搜索中真正的问题是什么?我不明白…标题是关于硒,但在firepath搜索中真正的问题是什么?我不明白…谢谢你的帮助。此外,主要问题是由于该项位于“iframe”标记内。现在工作很好。谢谢你的帮助。此外,主要问题是由于该项位于“iframe”标记内。它现在运转良好。
By.cssSelector("#mobile");
By.xpath("//input[@id = 'mobile']");