- A+
urllib是Python标准库最为常用的一个网络资源访问的模块了,它可以让你像访问本地文本文件一样,读取网页的内容。
Python urllib的作用是访问一些不需要验证的网络资源和cookie等。
urllib模块提供了一个为网络资源访问的超简单易懂的api接口,还包括一些函数方法用于对参数编码、下载网页文件等操作。这个模块的使用门槛非常低,初期者也可以尝试去抓取和读取或者保存网络资源,下面短短2行代码让你体会到Python的强大。
安云网代码演示:
>>> import urllib #它是标准库中的模块,不需要额外下载
>>> print urllib.urlopen('http://www.AnYun.ORG/').read()
好了,2行代码将安云网首页的网页源码信息全部读到终端屏幕上了,我们调用了urllib的urlopen方法,打开了这个网址参数,之后用read()方法读取全部内容,再用print的方法输出到终端上。
urllib.urlopen()返回一个类文件的python对象,有下面这些方法可以使用:
1 )、read(), readline(), readlines(), fileno(), close(),看到没有与我们操作文件的方法都是一样的。
2 )、info() ,返回一个httplib.HTTPMessage这个python对象,可以显示你访问的网络资源服务器的HTTP头部信息。
3 ) 、getcode() ,它的作用是返回http网页状态码,200是成功访问,404是未找到,还有其它301状态码等可以查询相关书籍。
4 )、geturl(),返回你请求的url地址。
举个例子,这样效果更好一些:
>>> import urllib
>>> baidu = urllib.urlopen(‘http://www.baidu.com/’)
>>> print baidu.info #输出baidu首页头部信息
>>> print baidu.getcode() #输出baidu首页网页的状态码
>>> print baidu.geturl() #输出请求的url地址
>>> for line in baidu:
>>> print line,
>>> baidu.close() #关闭对象方法
好了,快去你的Python解释器中,去测试一下,看看输出的效果吧。今天安云网先介绍到这里,以后会补充更多的urllib模块的方法,比如,如何下载网页资源,统计下载进度,编码转换,POST/GET请求,中文乱码问题等。
当然有兴趣的朋友,可以参加我们安云网的Python培训班,小班授课,会系统全面的讲到非常多的网络抓取方面的知识。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫