Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.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:从执行javascript获取WebElement_Python_Selenium - Fatal编程技术网

Python Selenium:从执行javascript获取WebElement

Python Selenium:从执行javascript获取WebElement,python,selenium,Python,Selenium,但是,get\u element()始终不返回任何值。我希望它能给我一个Selenium Web元素。当我在浏览器上执行javascript时,它会给我DOM节点元素。您试图使javascript DOM对象等于python元素。它不能像那样自动转换。您必须使用代码从返回的javascript版本中的返回对象构建元素的Selenium版本。就我个人而言,我会使用纯javascript对元素执行任何操作,并返回可以自动转换的简单类型的对象(即string、int、string/int数组等) 以下

但是,
get\u element()
始终不返回任何值。我希望它能给我一个Selenium Web元素。当我在浏览器上执行javascript时,它会给我DOM节点元素。

您试图使javascript DOM对象等于python元素。它不能像那样自动转换。您必须使用代码从返回的javascript版本中的返回对象构建元素的Selenium版本。就我个人而言,我会使用纯javascript对元素执行任何操作,并返回可以自动转换的简单类型的对象(即string、int、string/int数组等)

以下是一篇文章,提供了一些帮助:


如果您确实希望能够执行javascript并获取DOM对象并将其转换为Selenium元素,我建议您熟悉Selenium代码库,了解它具体如何进行DOM选择,以及它如何将其转换为IWebElement接口实现

你到底为什么要通过JavaScript而不是本机Selenium代码来查找ID元素?我正在使用python,但另一篇文章主要是关于JavaScript的,如果你这样做的话,你已经有了执行JavaScript的python代码。否则,代码链接将指向python代码项目。
def get_element():
    return browser.execute_script("return document.getElementById('dsq')")