博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 下载图片的几种方法
阅读量:4978 次
发布时间:2019-06-12

本文共 1268 字,大约阅读时间需要 4 分钟。

总结下:

url = 'http://img.pconline.com.cn/images/upload/upc/tx/photoblog/1707/31/c14/54293429_1501509923353_mthumb.jpg'

1、urllib库——urlretrieve

import urllibdef report_hook(count, block_size, total_size):      print '%02d%%'%(100.0 * count * block_size/ total_size)     urllib.urlretrieve("http://img.pconline.com.cn/images/upload/upc/tx/photoblog/1707/31/c14/54293429_1501509923353_mthumb.jpg",r'D:\DESKTOP\1.jpg',reporthook= report_hook)

顺便提一下,report_hook是回调函数——reporthook:是一个回调函数,当连接上服务器、以及相应的数据块传输完毕的时候会触发该回调。我们可以利用这个回调函数来显示当前的下载进度。

 

2、还是urllib——urlopen

import urllibr = urllib.urlopen(url)data = r.read()with open("1234.jpg",'wb') as f:   f.write(data)

 

 

3、requests

#coding:utf-8import requestsr= requests.get(url)with open("123.jpg",'wb') as f:   f.write(r.content)

 注意:

resp.text返回的是Unicode型的数据。

resp.content返回的是bytes型也就是二进制的数据。

 

 

 

urlencode的发送请求同时传data表单
import urllib    import urllib2      url = 'http://www.someserver.com/register.cgi'        values = {
'name' : 'WHY', 'location' : 'SDU', 'language' : 'Python' } data = urllib.urlencode(values) # 编码工作 req = urllib2.Request(url, data) # 发送请求同时传data表单 response = urllib2.urlopen(req) #接受反馈的信息 the_page = response.read() #读取反馈的内容

 

转载于:https://www.cnblogs.com/vhills/p/7411034.html

你可能感兴趣的文章
aix的lvm管理
查看>>
《深入理解Android 卷1》笔记
查看>>
静态成员实例
查看>>
第十二章 执行期别辩识
查看>>
win10多用户远程登录
查看>>
JSP基础知识
查看>>
R语言合并data.frame
查看>>
质量保证与质量控制的区别
查看>>
异常点检测算法
查看>>
回文数 (Palindrome Numbers,Dhaka 2003,LA 2889)
查看>>
深入理解Java虚拟机
查看>>
Excel解析工具POI
查看>>
jQuery----blur()方法
查看>>
FFmpeg命令详解
查看>>
`ln`命令创建软链接错误
查看>>
mysqlDOS命令
查看>>
jquery $(document).ready() 与window.onload的区别
查看>>
day13_自动抽取数据——监控存储过程
查看>>
[转]http返回头中content-length与Transfer-Encoding: chunked的问题释疑
查看>>
课程作业1
查看>>