python urllib 使用总结,pythonurllib,import urlli
python urllib 使用总结,pythonurllib,import urlli
import urlliburl = "http://byrx.net/"#urlopen()sock = urllib.urlopen(url)htmlCode = sock.read()sock.closefp = open("e:/1.html","wb")fp.write(htmlCode)fp.close#urlretrieve()urllib.urlretrieve(url, 'e:/2.html')
urlopen()
与urlretrieve()
都可以抓取网页内容,但:urlopen是先打开,然后就像操作本地文件一样读取或操作,提供的读取模式有:read(),readline(),readlines() ;其他一个重要的可用方法有:
而urlretrieve却是直接下载保存,当然,如果没有指定保存路径,那默认会保存在系统临时目录中。另外,查看库文件看到,urlretrieve()的形参有:urlretrieve(url, filename=None, reporthook=None, data=None) 其中reporthook 指的是回调函数,即可以实时打印出Url的下载进度!如:
def rpb(blocknum, blocksize, totalsize): percent = 100.0 * blocknum * blocksize / totalsize if percent > 100:percent = 100 print "%.2f%%"% percenturllib.urlretrieve("http://www.w3.org/Protocols/", 'e:/w3.html',rpb)
但是对于rpb()参数 totalsize 是否有值,要看header中是否存在键:Content-Type,可通过 urllib.urlopen(url).info(),如果没totalsize =-1 ,进度显示就不正确了。
HTTP服务器头信息:
相关内容
- python使用sgmllib库 SGMLParser解析页面中的链接地址,sgm
- python使用ftplib做ftp操作,pythonftplib,ftplib是 Pyth
- webpy的LightTPD配置,webpyLightTPD配置,在生产环境下推荐在
- webpy 性能调优记录页面执行时间,webpy调优,记录网站执
- python使用urllib2上传文件代码,pythonurllib2,import urlli
- python中文字符编码decode,encode以及乱码解决总结,pyt
- 在python中使用windows内存映射文件,pythonwindows,在python中
- python使用json序列化datetime类型问题处理,jsondatetime,使用
- 使用urlparse.urlparse()解析url,,python中使用url
- python使用memcached做缓存,pythonmemcached,在python中使用me
评论关闭