是否可以在无头Chrome上使用click()函数?

时间:2019-06-09 13:45:17

标签: python selenium google-chrome selenium-webdriver selenium-chromedriver

我正在尝试使用无头版Chrome浏览器来单击页面中的某些href链接。我想使用无头版本,因为我不时打开浏览器感到烦恼。使用无头版本,click()函数将无法执行,我的脚本将陷入循环。

仅无头版本不起作用,但是删除--headless参数时,脚本可以正常工作。

chrome_options = webdriver.ChromeOptions()
            prefs = {'download.default_directory' : 'D:/Downloads'}
            chrome_options.add_experimental_option('prefs', prefs)
            chrome_options.add_argument("--headless")

            if file_name.endswith('.zip'):

                #Initialize browser with settings
                browser = webdriver.Chrome(options=chrome_options)


                browser.get(file_url)
                time.sleep(10)
                browser.find_element_by_link_text("download/view now").click()

                #Wait while file downloads, when downloaded, close browser.
                while not os.path.exists('D:/Downloads/' + file_name):
                    print('Downloading file: ' + file_name)
                    time.sleep(5)
                else:
                    browser.quit()

我想使用无头版本的Chrome浏览器单击链接文本,但不会,这会导致下载文件的无限循环:File_name

0 个答案:

没有答案