第一个:
urllib.request.urlopen()#需要传递一个url;获得的是一个对象
对象名.read():得到的是二进制数据
二进制-->字符串:decode()
字符串-->二进制:encode()
在网上碰到的编码格式只有 gbk 和 utf8
其他的方法:
对象名.readlines():按行读取
对象名.url:获取请求的网址
对象名.headers:获取响应头部,字符串格式的
对象名.getheaders():列表 列表里面是元组
对象名.getcode():获取响应的状态码
举例:
url = 'http://www.baidu.com/'
res = urllib.request.urlopen(url)#打开该url 获取一个对象
print(res.read().decode("utf8"))#读取该对象的内容,以字符串的格式读取
#将响应的信息保存到文件中
with open('baidu.html','wb') as fp:
fp.write(res.read())
第二个:
urllib.request.urlretrieve()
urllib.request.urlretrieve(url,filepath)#将获取的URL的内容写到文件目录中去
举例:
图片的下载
#普通的下载
img_url = "http://i1.umei.cc/uploads/tu/201807/9999/89162d0319.jpg"
urllib.request.urlretrieve(img_url,'baidu.jpg')#通过url获取到该图片,并且存储到baidu.jpg
#一般图片都有防盗链,如果有防盗链的话需要使用下面的方式
img_url = "http://i1.umei.cc/uploads/tu/201807/9999/89162d0319.jpg"
res = urllib.request.urlopen(img_url)
#存储文件
with open('qizhi.jpg','wb') as fp:
fp.write(res.read())
网友评论