硒从窗口切换后会中断

时间:2019-06-28 22:16:58

标签: python selenium google-chrome selenium-webdriver

我是Stack和Selenium的新手,所以请原谅我。

我正在编写一个Selenium(Python)脚本,该脚本基本上在整个教程站点中运行,无数次出于视觉目的(而不是为了进行测试,只是为了演示如何不断浏览该站点)。 该程序似乎可以正常运行,并且可以永久运行。

我的问题是: 如果您不在运行ChromeDriver窗口时,硒是否应该断裂?

我注意到,如果您切换窗口/最小化硒控制的Chrome窗口,上面编写的程序会中断。我基本上得到了TimeoutException,因为它无法再找到该元素。我不确定这是否是硒的设计方法,但是是否可以解决此问题?

我包含了Explicit,它等待网站赶上该程序,然后获取TimeoutException(捕获)。

def elemClick(elem):
    try:
        highClick(elem)
        mouseTo(elem)
        elem.click()
        time.sleep(1)
    except TimeoutException:
        print("Loading took too much time!")
def tour():
    while True:
        time.sleep(3)
        try:
            elem = driver.find_element_by_xpath("//div[@class='btnnextblock']")
            elemClick(elem)
        except ElementNotVisibleException:
            break
while 0 < 1:
    if btnNum == 1:
        print("Tour 1")
    elif btnNum == 2:
        print("Tour 2")
    elif btnNum == 3:
        print("Tour 3")
    else:
        btnNum = (int)(input("Path not recognized - Enter again: "))
    tour()
    count += 1
    time.sleep(1)

即使窗口最小化,我也希望程序继续运行,但这似乎是一个连续的问题。我目前已经在窗口本身上运行它,它已经完成了140次连续迭代,所以我假设问题是您无法最小化硒窗口并希望它继续工作。

但是,要确认/查看是否有解决方法。

谢谢!

0 个答案:

没有答案