将urllib下载转换为使用请求

时间:2015-03-09 19:05:57

标签: python python-requests

如何使用requests执行以下操作?

urllib.urlretrieve('ftp://USER:pass@i.website.net/upload/file.csv', filepath)

如果我尝试requests.get(),我会收到requests.exceptions.InvalidSchema: No connection adapters were found for 'ftp://的错误。

1 个答案:

答案 0 :(得分:5)

您无法使用requests通过FTP下载文件。来自requests documentation

  

请求是一个用Python编写的Apache2许可 HTTP库,供人类使用。

可以合理插拔的,我注意到有一个requests-ftp project,但这不过是一个黑客,因为没有维护状态。来自文档:

  

不提供:

     
      
  • 连接池!每个请求有一个新连接和多个命令,包括身份验证。效率极低。
  •   

requests.get('http://..', stream=True)请求不同,加载项也不适合下载大文件,因为所有数据都已加载到内存中。