Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用urllib2和wget在python中下载文件_Python_Download_Wget_Urllib2_Urllib3 - Fatal编程技术网

使用urllib2和wget在python中下载文件

使用urllib2和wget在python中下载文件,python,download,wget,urllib2,urllib3,Python,Download,Wget,Urllib2,Urllib3,我正在尝试用python下载一个在线文件。我已经看到了针对python 2和wget使用urllib2的解决方案。如果我的目的只是下载文件,那么使用urllib2而不是wget有什么好处吗。对我来说,使用wget包似乎更简单。然而,我看到的大多数在线解决方案都是在python 3中使用urllib2和urllib。我更倾向于wget,因为它同时适用于Python2和Python3 这个问题与标记为重复的问题不同,因为我要求对wget有所不同,而另一个问题并没有解决与wget包的关系。如果您使用w

我正在尝试用python下载一个在线文件。我已经看到了针对python 2和wget使用urllib2的解决方案。如果我的目的只是下载文件,那么使用urllib2而不是wget有什么好处吗。对我来说,使用wget包似乎更简单。然而,我看到的大多数在线解决方案都是在python 3中使用urllib2和urllib。我更倾向于wget,因为它同时适用于Python2和Python3


这个问题与标记为重复的问题不同,因为我要求对wget有所不同,而另一个问题并没有解决与wget包的关系。

如果您使用
wget
,那么在需要解码发生的错误时,您最终将编写比Python库多得多的代码

然而,当谈到
urllib
——首先,您确定您真的需要支持Python 2吗?Python2已经过时了

如果您真的相信您是这样做的,那么也许您可以使用兼容库,例如或


你也应该考虑其他选择——库优于 ULLIB < /Cord>,并为Python 2和3提供了相同的接口。

<代码> WGET 要求你将其封装到外部应用程序中。Python程序应该总是更喜欢调用Python库而不是进行外壳处理。
请求
库也很好,可用于Python 2&3,它准确地展示了如何使用Python 2或3中的
urllib
。@JonathonReinhart外壳处理是什么意思。这是否意味着wget在后面运行一些shell命令。wget也是一个标准的python库,对吗?那么如何区分python库和非python库呢?尽管如此,从我现在读到的内容来看,wget并不是一个好的选择。我的错误。我没有意识到它的存在:“纯python库”。我以为你指的是命令行实用程序。不管怎样,
请求
更为常见。@Anitti再读几遍后,我确信可以使用请求。然而,我很好奇您所说的是什么类型的错误,以及当wget出现在PyPI中并且应该是最新的时,为什么很难用它进行调试。如果你能举个例子。另外,我们也看到了一些答案,但只有少数几个,建议不要使用urllib,因为它不如wget()成熟。你能对这一点发表评论吗。