下载 - urlretrieve()函数

import urllib

urlretrieve() 方法直接将远程数据下载到本地。

>>> help(urllib.urlretrieve)
Help on function urlretrieve in module urllib:

urlretrieve(url, filename=None, reporthook=None, data=None)

    1. 参数 finename 指定了保存本地路径(如果参数未指定,urllib会生成一个临时文件保存数据。)
    2. 参数 reporthook 是一个回调函数,当连接上服务器、以及相应的数据块传输完毕时会触发该回调,我们可以利用这个回调函数来显示当前的下载进度。
    3. 参数 data 指 post 到服务器的数据,该方法返回一个包含两个元素的(filename, headers)元组,filename 表示保存到本地的路径,header 表示服务器的响应头。
import urllib
def cbk(a, b, c):
    ‘‘‘回调函数
    @a: 已经下载的数据块
    @b: 数据块的大小
    @c: 远程文件的大小
    ‘‘‘
    per = 100.0 * a * b / c
    if per > 100:
        per = 100
    print ‘%.2f%%‘ % per

url = ‘http://www.google.com‘
local = ‘d://google.html‘
urllib.urlretrieve(url, local, cbk)

这个例子将 google 的 html 抓取到本地,保存在D:/google.html 文件中,同时显示下载的进度。

时间: 2024-10-09 21:32:17

下载 - urlretrieve()函数的相关文章

Python urllib的urlretrieve()函数解析 (显示下载进度)

1 #!/usr/bin/python 2 #encoding:utf-8 3 import urllib 4 import os 5 def Schedule(a,b,c): 6 ''''' 7 a:已经下载的数据块 8 b:数据块的大小 9 c:远程文件的大小 10 ''' 11 per = 100.0 * a * b / c 12 if per > 100 : 13 per = 100 14 print '%.2f%%' % per 15 url = 'http://www.python.

Python urllib urlretrieve函数解析

Python urllib urlretrieve函数解析 利用urllib.request.urlretrieve函数下载文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 Urlretrieve函数解析 urllib.request.urlretrieve函数解析 urlretrieve(url, filename=None, reporthook=None, data=None) 参数 finename 指定了保存本地路径(如果参数未指定,urllib会生成一个临时文件

Python中urlretrieve函数

API定义: urllib.request.urlretrieve(url,filename=None,reporthook=None, data=None) 利用urlretrieve() 将数据下载到本地. - 参数 finename 指定了保存本地路径(如果参数未指定,urllib会生成一个临时文件保存数据.) - 参数 reporthook 是一个回调函数,当连接上服务器.以及相应的数据块传输完毕时会触发该回调,我们可以利用这个回调函数来显示当前的下载进度. - 参数 data 指 po

51CTO下载-python函数中文手册

内置函数 一, 文档说明 原始文档来自于python v2.7.2 中文译文和用法尚不完全,您可以自由修改和完善, 您可以在文档结尾鸣谢添上您的名字,我们将会感谢您做的 贡献! 二,函数列表 1,取绝对值 abs(x) Return the absolute value of a number. The argument may be a plain or long integer or a floating point number. If the argument is a complex 

urllib.urlretrieve远程下载

下面我们再来看看 urllib 模块提供的 urlretrieve() 函数.urlretrieve() 方法直接将远程数据下载到本地. >>> help(urllib.urlretrieve) Help on function urlretrieve in module urllib: urlretrieve(url, filename=None, reporthook=None, data=None) 参数 finename 指定了保存本地路径(如果参数未指定,urllib会生成一个

[python爬虫]使用urllib函数urlretrieve报错[socket error][Errno 10054]

为了练手,使用爬虫爬一个"你懂得"图床的,使用的是urlretrieve函数,不但速度慢,还总是会报错,不是open的timeout就是上面提到的socket error. 在网上找了许多办法诸如请求中加入headers.在调用urllib2.Request.urlopen().read()后需要调用close()等方法并未奏效. 由于不想麻烦scrapy等库,所以发现了个简单粗暴的办法: 直接使用urllib自带的open函数打开数据流,再以二进制写入文件保存: 参考代码段:其中注释

urllib使用三--urlretrieve下载文件

下载文件 urllib.urlretrieve() 参数: url:远程地址 filename:要保存到本地的文件 reporthook:下载状态报告 data:有就变成POST请求,有格式要求 返回值: 返回元组(filename, HTTPMessage) import urllib def print_list(lists): for i in lists: print(i) fname,msg = urllib.urlretrieve("http://blog.kamidox.com/&

python下载pps视频

简单的python下载脚本 思路 视频播放地址提取 直接解析一下原网页的源文件,利用正则就可以得到所有视频的播放地址,下面的代码以微信公共平台python教程的播放地址为例. 视频链接提取 这里利用了飞驴视频下载API进行视频链接提取,按照API的格式填写相关参数就ok了 视频下载并保存 使用urllib.urlretrieve函数保存视频就可以了 源代码 源代码贴出来,大家相互学习一下.代码比较简单,是按照上面的思路一步步做的,这里就不详细解释了 ```python !/usr/bin/env

python 批量下载 spring 的 xsd

#coding=utf-8 import os import urllib import urllib2 import re from bs4 import BeautifulSoup # 利用 urllib.urlretrieve() 函数进行下载.非常方便 import socket #超时时间 socket.setdefaulttimeout(5) # 一个空文件夹 basedir=r"E:\spring".decode('utf-8') os.chdir(basedir) ho