2016-09-15 58 views
1

下载时,我希望有Firefox中使用selenium为Python下载主数据(下载,XLSX)从此Frankfurt stock exchange webpage Excel文件。Python的硒:火狐neverAsk.saveToDisk从斑点URL

问题:我无法让Firefox下载文件,而不询问首先保存在哪里。

让我首先指出,我试图从Excel文件中的URL,真是的Blob网址:

http://www.xetra.com/blob/1193366/b2f210876702b8e08e40b8ecb769a02e/data/All-tradable-ETFs-ETCs-and-ETNs.xlsx

也许BLOB是造成我的问题呢?或者,也许问题出在我的MIME处理?

from selenium import webdriver 

profile_dir = "path/to/ff_profile" 
dl_dir = "path/to/dl/folder" 

ff_profile = webdriver.FirefoxProfile(profile_dir) 

ff_profile.set_preference("browser.download.folderList", 2) 
ff_profile.set_preference("browser.download.manager.showWhenStarting", False) 
ff_profile.set_preference("browser.download.dir", dl_dir) 
ff_profile.set_preference('browser.helperApps.neverAsk.saveToDisk', "text/plain, application/vnd.ms-excel, text/csv, text/comma-separated-values, application/octet-stream") 

driver = webdriver.Firefox(ff_profile) 

url = "http://www.xetra.com/xetra-en/instruments/etf-exchange-traded-funds/list-of-tradable-etfs" 
driver.get(url) 

dl_link = driver.find_element_by_partial_link_text("Master data") 
dl_link.click() 

回答

1

实际的MIME类型在这种情况下的使用数量为:

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet 

我怎么知道呢?这里是我做了什么:

  • 手动打开Firefox和导航到目标站点
  • 下载文件时,检查复选框以保存这些类型的文件自动
  • 去帮助 - >故障排除信息和导航到“配置文件文件夹”中的配置文件夹
  • ,foudn并开通mimetypes.rdf
  • mimetypes.rdf找到对应的Excel文件,我最近下载
  • 记录/资源
+0

感谢亚历克斯的答案和指导方针。这[回答](http://stackoverflow.com/a/4212908/4909923)似乎也很有用。 – Winterflags