我正在构建用于下载远程文件的python应用程序。在大多数情况下,我们使用pycurl
进行实际下载,但是我们需要定义一个包装pycurl
对象的类。该类可以处理几种协议(HTTP(S)
,FTP(S)
和SFTP
)。
我们注意到,在某些发行版(例如Ubuntu 18.04)上,cURL
不支持SFTP
协议。因此,使用一些与SFTP
相关的选项(例如SSH_KNOWNHOSTS
)会导致崩溃(即使在URL上使用其他协议的情况下,在下载前设置 时也会发生崩溃)。因此,我们需要知道在定义类时(即在导入模块时)可用的协议。
在python中,cURL
支持哪些协议的最佳方法是什么?我知道pycurl.version_info()
的输出包含受支持的协议(项目8),但是有更好的方法吗?
答案 0 :(得分:0)
pycurl不会跟踪或检查libcurl支持哪些协议。