如何保存XLSX文件?

如何保存XLSX文件?

问题描述:

我试过了:如何保存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文件。

任何想法?

+0

删除我的答案,因为我刚刚意识到mime类型实际上是'应用程序/ vnd.openxmlformats-officedocument.spreadsheetml.sheet'你确实有。 – sircapsalot

+0

谢谢,你的建议实际上是有道理的,我会尝试使用一些流来阅读文件,而不用点击,从url – filip

+0

这绝对是最好的方式去做它。 – sircapsalot

我有类似的问题。

这是我工作的浏览器配置文件配置行。

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'); 

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