用selenium在python中下载文件后,文件会被自动删除。

问题描述 投票:1回答:1

python脚本在一个网站上搜索一个文件,并将其下载到指定的位置!一切都很好,文件被下载了,但就当 driver.quit() 这是我的代码。

def firefoxOptions():
    options = Options()

    options.headless = True
    options.set_preference("browser.download.folderList", 2)
    options.set_preference("browser.download.manager.showWhenStarting", False)
    options.set_preference("browser.download.dir", "PATH")
    options.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/csv")
    return options


def search():
    url = 'site_URL'
    driver = webdriver.Firefox(options=firefoxOptions()) 
    driver.get(url)

    time.sleep(3) #waits for the page to properly load

    driver.find_element(
        By.CSS_SELECTOR,
        "css_selector_first_button").click()

    time.sleep(1) #waits to load

#finds the download button and click it
    driver.find_element(By.CSS_SELECTOR, "css_selector_second_button").click()

    time.sleep(15) #waits for the download to finish
    print("download complete!")
    driver.quit() #file gets deleted when this is executed

search()

我试着用 driver.close() 而不是 driver.quit() 但同样的事情发生了!

python selenium selenium-webdriver selenium-firefoxdriver
1个回答
1
投票

你确定文件完全下载,而且15秒就够了吗?请看这里。python selenium, 找出下载完成的时间?

否则,由于文件是通过自动化脚本下载的,可能你的杀毒软件把它移到垃圾桶了。暂时关闭你的杀毒软件,运行你的脚本,看看下载的文件是否还被移到垃圾桶,应该可以确定是不是你的杀毒软件。

© www.soinside.com 2019 - 2024. All rights reserved.