zoukankan      html  css  js  c++  java
  • [转]urllib模块urlretrieve方法

    直接将远程数据下载到本地

    info:

    urllib.urlretrieve(url[, filename[, reporthook[, data]]])
    参数说明:
    url:外部或者本地url
    filename:指定了保存到本地的路径(如果未指定该参数,urllib会生成一个临时文件来保存数据);
    reporthook:是一个回调函数,当连接上服务器、以及相应的数据块传输完毕的时候会触发该回调。我们可以利用这个回调函数来显示当前的下载进度。
    data:指post到服务器的数据。该方法返回一个包含两个元素的元组(filename, headers),filename表示保存到本地的路径,header表示服务器的响应头。

    eg:

     1 import urllib
     2 def callbackfunc(blocknum, blocksize, totalsize):
     3     '''回调函数
     4     @blocknum: 已经下载的数据块
     5     @blocksize: 数据块的大小
     6     @totalsize: 远程文件的大小
     7     '''
     8     percent = 100.0 * blocknum * blocksize / totalsize
     9     if percent > 100:
    10         percent = 100
    11     print "%.2f%%"% percent
    12 
    13 url = 'http://www.sina.com.cn'
    14 local = 'd:\sina.html'
    15 urllib.urlretrieve(url, local, callbackfunc)
  • 相关阅读:
    Struts数据效验
    Struts2中国际化
    ValueStack对象
    Ognl表达式语言
    Struts2拦截器
    ubuntu下tomcat运行不起来解决
    Windows 下的SSH客户端
    远程管理控制ssh
    linux用户和组账户管理
    搭建Java服务器,并且实现远程安全访问linux系统
  • 原文地址:https://www.cnblogs.com/mangoVic/p/5604120.html
Copyright © 2011-2022 走看看