求大神指导:用python的urllibe.urlretrieve(url, path)下载指定的url...

发布网友

我来回答

2个回答

懂视网

这篇文章主要介绍了关于解决http://www.gxlcms.com/wiki/1514.html" target="_blank">python3 urllib中urlopen报错问题的相关资料,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。

前言

最近更新了Python版本,准备写个爬虫,意外的发现urllib库中属性不存在urlopen,于是各种google,然后总结一下给出解决方案

问题的出现

详解python3 urllib中urlopen报错的解决方法

AttributeError: 'module' object has no attribute 'urlopen'

问题的解决途径

我们先来看下官方文档的解释:

a new urllib package was created. It consists of code from 
urllib, urllib2, urlparse, and robotparser. The old 
modules have all been removed. The new package has five submodules: 
urllib.parse, urllib.request, urllib.response, 
urllib.error, and urllib.robotparser. The 
urllib.request.urlopen() function uses the url opener from 
urllib2. (Note that the unittests have not been renamed for the 
beta, but they will be renamed in the future.)

也就是说官方3.0版本已经把urllib2,urlparse等五个模块都并入了urllib中,也就是整合了。

正确的使用方法

import urllib.request 
url="http://www.baidu.com" 
get=urllib.request.urlopen(url).read() 
print(get)

结果示意图:

详解python3 urllib中urlopen报错的解决方法

其实也是可以换个utf-8的编码让读取出来的源码更正确的,但这已经是番外的不再提了。

热心网友

是不是e:/mlf是个目录什么的呀?如果是目录,估计是没法再写个同名文件了。换个名字实验一下,不能光指定到目录。追问e:/mlf是个目录,我就是想把下载的图片放在e盘下mlf这个目录下的,为啥不行呢?不会只能指定是e盘吧?只能下载到e:\\这个层次?

追答再加上文件名呀。光有目录没有文件名也不行的。因为错误的地方是open 的wb,如果对目录,肯定就错了。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com