繁体   English   中英

此Curl命令的Python等效项

[英]Python equivalent of this Curl command

我正在尝试使用python来下载文件,模仿与此curl命令相同的行为:

curl  ftp://username:password@example.com \
    --retry 999 \
    --retry-max-time 0
    -o 'target.txt' -C -

在python中看起来如何?

我调查过的事情:

  • 请求:不支持ftp

  • Python-wget:不支持下载简历

  • request-ftp:不支持下载恢复

  • fileDownloader:损坏(?)

我猜想一个人需要从头开始构建它,并使用pycurl或urllib2或类似的东西进行低级构建。

我正在尝试在python中创建此脚本,我感到迷路。我应该从python子进程中调用curl吗?

任何指向写入方向的信息将不胜感激

您可以使用python的内置ftplib

这是代码:

from ftplib import FTP

ftp = FTP('example.com', 'username', 'password') #logs in

ftp.retrlines() # to see the list of files and directories ftp.cwd('to change to any directory')

ftp.retrbinary('RETR filename', open('Desktop\filename', 'wb').write) # start downloading

ftp.close() # close the connection

支持自动恢复。 我什至尝试关闭wifi并检查下载是否正在恢复。

您可以参考/Python27/Lib/ftplib.py以获得默认的GLOBAL_TIME_OUT设置。

有这个库可以从ftp服务器下载文件

fileDownloader.py

下载文件

downloader = fileDownloader.DownloadFile(‘http://example.com/file.zip’, “C:UsersusernameDownloadsnewfilename.zip”, (‘username’,’password’)) 

downloader.download()

恢复下载

downloader = fileDownloader.DownloadFile(‘http://example.com/file.zip’, “C:UsersusernameDownloadsnewfilename.zip”, (‘username’,’password’)) 

downloader.resume()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM