【问题标题】:automation windows Chrome anomaly selenium自动化 windows Chrome 异常 selenium
【发布时间】:2021-01-04 01:41:43
【问题描述】:

我们在 Chrome 中使用 ahk 和 Selenium 构建自动化,我们在流程中需要 ctrl+单击链接。在一台计算机上,Selenium 方法可以正常工作,没有错误,特别是“Selenium.Keys.Control”。但是在我的计算机上它找不到元素,并且根据使用的方法,我得到 elementNotVisibleError 或错误消息,说“我无法与元素交互”。它点击它上面的元素,即父元素,但它不会点击右键,即使使用的 XPath 工作正常。

我的问题是为什么该方法在我同事的浏览器上工作,即使我们有相同版本的 chrome?

【问题讨论】:

    标签: javascript windows selenium selenium-chromedriver autohotkey


    【解决方案1】:

    这里可能已经回答了问题:

    Element not visible error (not able to click an element)

    但是,这可能是由于两台计算机的屏幕尺寸和分辨率不同造成的。

    如果您知道该元素存在,您可以尝试滚动到它(如果是这种情况,就像我曾经遇到的问题一样):

    elm = browser.find_elements_by_xpath('//*[contains(text(), "%s")]' % track)
    
    if not elm.is_displayed():
          browser.execute_script("arguments[0].scrollIntoView();", elm)
    

    (...在屏幕中出现元素后执行您需要做的事情...)

    【讨论】:

    • 如果你知道你需要去的链接,你不必点击按钮
    • 它在一个循环中,所以链接会改变每个新的索引。
    • 所以更好地解释你的问题,分享一些代码,分享页面。这个问题本身就很差。
    【解决方案2】:

    我偶然发现了答案,这很尴尬。在某个时候(可能是几周前),我不小心将 Chrome 缩放级别更改为 110%。这导致 html 元素相互重叠以干扰 Selenium.keys.control.click

    所以现在我已经将缩放级别更改为 80%,外部元素的干扰已经停止。

    但归根结底,问题在于网站的稳健性。

    感谢所有花时间思考我的问题的人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-04
      • 2022-08-04
      • 1970-01-01
      • 2017-12-24
      • 1970-01-01
      相关资源
      最近更新 更多