1、python2x下urlretrieve方法: 
直接将远程数据下载到本地。 
urllib.urlretrieve(url[, filename[, reporthook[, data]]]) 
参数说明: 
url:外部或者本地url 
filename:指定了保存到本地的路径(如果未指定该参数,urllib会生成一个临时文件来保存数据); 
reporthook:是一个回调函数,当连接上服务器、以及相应的数据块传输完毕的时候会触发该回调。我们可以利用这个回调函数来显示当前的下载进度。 
data:指post到服务器的数据。该方法返回一个包含两个元素的元组(filename, headers),filename表示保存到本地的路径,header表示服务器的响应头。 
下面通过例子来演示一下这个方法的使用,这个例子将新浪首页的html抓取到本地,保存在D:/sina.html文件中,同时显示下载的进度。

import urllib
def callbackfunc(blocknum, blocksize, totalsize): '''回调函数 @blocknum: 已经下载的数据块 @blocksize: 数据块的大小 @totalsize: 远程文件的大小 ''' percent = 100.0 * blocknum * blocksize / totalsize if percent > 100: percent = 100 print "%.2f%%"% percent url = 'http://www.sina.com.cn' local = 'd:\\sina.html' urllib.urlretrieve(url, local, callbackfunc)

2、python3下面要使用:urllib.request.urlretrieve()这种形式的调用,下面附一个python3下爬取贴吧上的图片的爬虫程序:

import urllib.request
import re
#py抓取页面图片并保存到本地#获取页面信息
def getHtml(url): html = urllib.request.urlopen(url).read() return html #通过正则获取图片 def getImg(html): reg = 'src="(.+?\.jpg)" pic_ext' imgre = re.compile(reg) imglist = re.findall(imgre,html) # print(imglist) return imglist html = getHtml("http://tieba.baidu.com/p/2460150866") list=getImg(html.decode()) #循环把图片存到本地 x = 0 for imgurl in list: print(x) urllib.request.urlretrieve(imgurl,'d:\\%s.jpg'% x) x+=1 print("done")

python2x与3x下使用urlretrieve下载文件相关推荐

  1. 已解决urllib.request.urlretrieve下载文件报错403

    已解决(python使用urlopen/urlretrieve下载文件时出现403 forbidden)urllib.error.HTTPError: HTTP Error 403: Forbidde ...

  2. linux 传文件夹,linux下上传下载文件夹的方法

    Linux下目录复制:本机->远程服务器 scp -r /home/shaoxiaohu/test1 zhidao@192.168.0.1:/home/test2 test1为源目录,test2 ...

  3. python urlretrieve登录下载_使用python urlretrieve下载文件

    urlretrieve()方法直接将远程数据下载到本地.urlretrieve()是python urllib下的一个函数,python3已经将urlretrieve()移到urllib.reques ...

  4. python2x与3x下urlretrieve的使用

    1.python2x下urlretrieve方法: 直接将远程数据下载到本地. urllib.urlretrieve(url[, filename[, reporthook[, data]]]) 参数 ...

  5. C/C++在VS2015下使用CURL下载文件

    CURL库下载地址     http://download.csdn.net/detail/kupig/9060961 #include "stdafx.h" #include & ...

  6. java本地可以发到linux不行,java 使用 ftp 在windows环境下可以正常下载文件,在linux环境下不行...

    windows环境下使用 public static void dowmloadFtpWindos(String fileUuid, HttpServletRequest request,HttpSe ...

  7. IE浏览器下点击下载文件没反应

    今天测试系统中的文件下载时,点击文件下载后,浏览器没反应,在网上找了下原因是IE的临时文件夹目录没有了,设置一下即可. 方法如下: 设置下IE的临时文件夹即可

  8. ubuntu下 apt-get install 下载文件存放的位置

    存放位置: /var/cache/apt/archives/ 清除保存包: 这个命令只会删除缓存起来的deb包,不会取消已经更新了的包 apt-get clean

  9. python爬虫下载文件-【Py大法系列--03】Python如何自动下载文件

    问题描述 Python自动下载文件,通用文件,包括但不限于压缩文件.图片等. 解决方法 一般情况下,Python下载文件的方式有以下几种: 利用urllib.urllib2,即Python爬虫用的最多 ...

最新文章

  1. 异常处理汇总-开发工具
  2. python crawler(1)
  3. 我学shell程序的记录
  4. Faster-RCNN训练自己数据集遇到的问题集锦
  5. Confluence与Jira整合之统一用户管理
  6. pandas数据存储于读取
  7. JavaScript类型转换的有趣应用
  8. CNN 模型框架(转)
  9. 中国老工业基地吉林对外贸易重回历史高水平
  10. 基于孪生卷积网络(Siamese CNN)和短时约束度量联合学习的tracklet association方法
  11. GNURadio For Windows编译安装脚本v1.1.1发布
  12. vue3 composition API
  13. 对于现在毕业之后,大部分找不到合适的工作,转行到软件开发(大部分是JAVA)的人来说,分享下自己的经验
  14. Matlab App Designer自学笔记(九):容器及图窗控件
  15. 快速将有文件的FAT32格式的U盘转NTFS格式(Windows)
  16. pip国内镜像解决no matching distribution found for XXX
  17. 在linux环境下测试和使用aria2c
  18. 攻防世界MISC进阶之misc1
  19. 传统行业的互联网创业机会在哪里?
  20. 1121. Damn Single

热门文章

  1. 20100506 学习记录:grdview添加新的一行数据
  2. [CoolStuff]有趣的Zumobi
  3. (原創) 我的Design Pattern之旅[3]:使用template改進Strategy Pattern (OO) (Design Pattern) (C/C++) (template)...
  4. 我依然坚持建议你开始写博客 | 写给我的 2017
  5. tf.name_scope() 和 tf.variable_scope() 的用法和玄机
  6. F5配置irule,使其系统在X个时间段提供服务,其余时间显示维护页面
  7. zabbix文档3.4-7配置
  8. 【Java】全站编码过滤器GenericEncodingFilter代码与配置
  9. Openvswitch原理与代码分析(3): openvswitch内核模块的加载
  10. APUE学习笔记——第十章信号中10.15节例程的运行结果与书本里的不一样