0
我試圖使用webdriver的execute_script()來運行jquery,但沒有運氣。下面是我執行的步驟:在jquery上使用webdriver執行腳本不起作用
硒/ webdriver的,運行execute_script()如下:
jquery_string = 'return $(\'[id="ClusterMembers:ClusterMembersScreen:ttlBar"]\')' web_element = driver.execute_script(jquery_string)
它返回的錯誤爲:
WebDriverException:消息:$是未定義
構建信息:版本:'2.53.0' ...
保持從調試器上面的函數調用, 去站立FF瀏覽器從硒客戶端機器, 和類型,從開發者控制檯下同jQuery的字符串(鍵入「允許粘貼」後):
:$('[id="ClusterMembers:ClusterMembersScreen:ttlBar"]')
=>控制檯運行相同的上面的代碼:(1)前按預期
添加以下代碼返回
=>返回從調試器「web_element」的值不是webelement對象,而是一個字典以下的:
{'mouseout': 'function (data, fn) {\n\t\treturn arguments.length > 0 ?\n\t\t\tthis.on(name, null, data, fn) :\n\t\t\tthis.trigger(name);\n\t}', ....
我曾嘗試使用最新版本的jQuery(3.1) ,但仍然有同樣的失敗。
我在想,如果這個問題有什麼做的「允許粘貼」由FF或別的東西,我一直缺少必需?我很感激,如果有人可以擺脫一些光明?
我看到你的腳本腳本實際上是一個jQuery選擇器。爲什麼不使用常規方法從硒中找到選擇器?也可以使用外部雙引號來幫助增加額外的內部單引號。 – lauda
是的,我使用的是jquery,而這篇文章就是爲了這個目的。 –