问题:无法找到/单击/发送到特定网页上任何元素的键。
WebDriver 浏览器
我可以与该网页进行交互,直到我单击打开新选项卡的某个链接并且从该页面我无法执行任何操作。
在这里进行广泛研究后,我到目前为止所做的尝试是:
1- 由于打开了一个新选项卡,我已经“强制”使用driver.switch_to.window查看新选项卡的代码,并确保我已经打印了当前页面标题并且它是正确的。
2-我已经尝试了隐式/显式等待(甚至time.sleep)以等待页面加载。
3- 研究将我指向 iframe.. 我没有任何 iframe 但我已经搜索了帧数 (2) 并在两者之间切换并尝试使用 xpath(完整 xpath)查找元素但没有找到。
4-最大化窗口。
所以我尝试了书中的“一切”。检查我需要交互的元素,我发现每个元素都指向带有一些参数的 JS。
href="JavaScript:SWESubmitForm(document.SWEForm2_0,s_10,"s_2_1_96_0","VRId-0")" tabindex="2997" id="s_2_1_96_0">Track Faults
进一步查看发现 s_10 是脚本中的一个变量,它具有从 s_0 到 s_14 的不同选项。
var s_0 = {action:"/esales_enu/start.swe",target:"_sweview",SWECmd:"GotoView",SWEMethod:"GotoView",SWEView:"L2C Track Channel Reference View BT",SWEApplet:"L2C New CZ Home Page Applet BT",SWEReqRowId:"0",SWESP:"false",SWENeedContext:"true",SWEKeepContext:"0",SWEDIC:"false"}; var s_10 = {action:"/esales_enu/start.swe",target:"_sweview",SWECmd:"GotoView",SWEMethod:"GotoView",SWEView:"New Portal Fault Search View ORH BT",SWEApplet:"L2C New CZ Home Page Applet BT",SWEReqRowId:"0",SWESP:"false",SWENeedContext:"true",SWEKeepContext:"0",SWEDIC:"false"};
所以我开始搜索并找到了driver.execute_script()并且我写了:
driver.execute_script("SWESubmitForm(document.SWEForm2_0,s_10,'s_2_1_96_0','VRId-0')")
但这发生了:
selenium.common.exceptions.JavascriptException: Message: javascript error: SWESubmitForm is not defined
我在这里缺少什么?句法?如果有人可以阐明我应该朝哪个方向前进,将不胜感激。
谢谢。
幕布斯6054654
相关分类