标签:
Python标准库中有许多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如 urllib和urllib2 这个 HTTP 客户端库。这里总结了一些 urllib和urlib2 库的使用细节。
Python urllib 库提供了一个从指定的 URL 地址获取网页数据,然后对其进行分析处理,获取想要的数据。
一、urllib常用函数介绍:
1. urlopen()函数:即创建一个类文件对象为指定的 url 来读取。
可以使用help(urllib.urlopen)查看函数说明。
urlopen(url, data=None, proxies=None)
Create a file-like object for the specified URL to read from.
urlopen返回一个类文件对象,它提供了如下方法:
read(),readline,readlines,fileno和close: 这些方法的使用和文件对象一样;
info(): 返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息。
getcode():返回Http状态码,如果是http请求,200表示请求成功完成,404表示网址没有找到。
getutl: 返回请求的url地址。
示例:
>>>import urllib
>>>baidu = urllib.urlopen(‘http://www.baidu.com‘)
>>>baidu.read()
>>> print baidu.info()
输出:
Date: Fri, 24 Apr 2015 05:41:40 GMT
Server: Apache
Cache-Control: max-age=86400
Expires: Sat, 25 Apr 2015 05:41:40 GMT
Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT
ETag: "51-4b4c7d90"
Accept-Ranges: bytes
Content-Length: 81
Connection: Close
Content-Type: text/html
>>>for line in baidu: #等价于read(),就像在操作本地文件,将网页数据打印出来。
print line,
baidu.close()
补充:
urllib.urlopen(‘http://www.baidu.com‘)
urllib.urlopen(‘ftp://192.168.1.200‘)
urllib.urlopen(‘file:nowangic.py‘)
urllib.urlopen(‘file:F:\test\helloworld.py‘)
2. urlretrieve()函数:直接将远程数据下载到本地。
可以使用help(urllib.urlretvieve)查看函数说明
Help on function urlretrieve in module urllib:
urlretrieve(url, filename=None, reporthook=None, data=None)
标签:
原文地址:http://www.cnblogs.com/yu2000/p/4453252.html