Python标准库 urllib

 

urllib是python的一个获取url的模块。它用urlopen函数的形式提供了一个很是简洁的接口。这使得用各类各样的协议获取url成为可能。它同时 也提供了一个稍微复杂的接口来处理常见的情况-如基本的认证,cookies,代理,等等。这些都是由叫作opener和handler的对象来处理的。html

urllibpython


 

import urllib
s
= urllib.urlopen('http://tieba.baidu.com/p/3606519228')
print s.read() #将会打印出整个文件的html源代码

s.readline() #打印Html代码的第一行
s.getcode() #返回Http状态码。若是是http请求,200请求成功完成;404网址未找到
s.info() #返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息
s.geturl() #返回请求的url

 

>>> s = urllib.urlopen('http://www.alwme.com/')
>>> byte = s.read()
>>> print("从 %s 上获取了 %s 字节") % (s.geturl(),len(byte))
从 http://alwme.com/ 上获取了 26834 字节

 

 

urlretrieve方法将url定位到的html文件下载到你本地的硬盘中,若是不指定filename,则会存为临时文件。缓存

urlretrieve() 返回一个二元组服务器

临时存放:cookie

>>> filename = urllib.urlretrieve('http://www.alwme.com/')
>>> type(filename)
<type 'tuple'>
>>> print filename
('/tmp/tmpaOdE2g', <httplib.HTTPMessage instance at 0x7f1b021e8680>)

 

存为本地文件:函数

>>> filename = urllib.urlretrieve('http://www.alwme.com/',filename='/home/zhg/temptest/alwme.html')
>>> type(filename)
<type 'tuple'>
>>> print filename
('/home/zhg/temptest/alwme.html', <httplib.HTTPMessage instance at 0x7f1b021e8a28>)
urllib.urlcleanup()   #清除因为urllib.urlretrieve()所产生的缓存
相关文章
相关标签/搜索