如何保存XLSX文件?

时间:2015-11-05 19:55:09

标签: excel selenium selenium-webdriver download xlsx

我试过了:

setPreference("browser.helperApps.neverAsk.saveToDisk","application/xls;text/csv");  

setPreference("browser.helperApps.alwaysAsk.force", false);  

profile.set_preference("browser.helperApps.neverAsk.saveToDisk",application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")  

但Firefox总是询问我是否要打开该文件。它适用于XLS文件。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我有类似的问题。

这是我正在使用的浏览器配置文件配置行。

profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.helperApps.alwaysAsk.force", False);
profile.set_preference("browser.download.dir", 'Desktop')
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")

driver = webdriver.Firefox(firefox_profile=profile)

在我的设置中,浏览器通常会提示用户在页面加载时保存或下载。通过此设置,它只会自动下载。要记住的一件事是您如何创建电子表格。在我的例子中,PHPExcel_IOFactory库使用这些行将其创建为openxmlformats-officedocument.spreadsheetml.sheet。

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');

PHPExcel_IOFactory::createWriter($new_excel_object, 'Excel2007');

因此,您尝试下载的文件类型可能与其预期类型不匹配。