- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汪汪海海的的实实验验室室
-- -- 各各种种图图形形学学实实验验和和数数据据结结构构实实验验以以及及其其他他一一切切琐琐碎碎杂杂乱乱的的小小笔笔记记 都都相相遇遇在在此此齐齐聚聚一一堂堂共共同同守守候候 00
eerrrroorr ((ss)),, 00 wwaarrnniinngg ((ss)) 这这神神奇奇时时刻刻的的到到来来
[[PPyytthhoonn]]网网络络爬爬虫虫 ((二二))::利利用用uurrlllliibb22通通过过指指定定的的UURRLL抓抓取取网网页页内内容容
分类: 爬虫 Python 2013-05-13 23:45 1265人阅读 评论 (0) 收藏 举报
所谓网页抓取 ,就是把URL地址中指定的网络资源从网络流中读取出来 ,保存到本地
类似于使用程序模拟IE浏览器的功能 ,把URL作为HTTP请求的内容发送到服务器端 , 然后读取服务器端的响应资源
在Python中 ,我们使用urllib2这个组件来抓取网页
urllib2是Python的一个获取URLs(Uniform Resource Locators)的组件
它以urlopen函数的形式提供了一个非常简单的接口
最简单的urllib2的应用代码只需要四行
我们新建一个文件urllib2_test01.py来感受一下urllib2的作用 :
import urllib2
response = urllib2.urlopen(/)
html = response.read()
print html
按下F5可以看到运行的结果 :
我们可以打开百度主页 ,右击 ,选择查看源代码 (火狐OR谷歌浏览器均可 ),会发现也是完全一样的内容
也就是说 ,上面这四行代码将我们访问百度时浏览器收到的代码们全部打印了出来
这就是一个最简单的urllib2的例子
1
除了http: ,URL同样可以使用ftp: ,file:等等来替代
HTTP是基于请求和应答机制的 :
客户端提出请求 ,服务端提供应答
urllib2用一个Request对象来映射你提出的HTTP请求
在它最简单的使用形式中你将用你要请求的地址创建一个Request对象 ,
通过调用urlopen并传入Request对象 ,将返回一个相关请求response对象 ,
这个应答对象如同一个文件对象 ,所以你可以在Response中调用.read()
我们新建一个文件urllib2_test02.py来感受一下 :
import urllib2
req = urllib2.Request()
response = urllib2.urlopen(req)
the_page = response.read()
print the_page
可以看到输出的内容和test01是一样的
urllib2使用相同的接口处理所有的URL头 例如你可以像下面那样创建一个ftp请求
req = urllib2.Request(ftp://e /)
在HTTP请求时 ,允许你做额外的两件事
1.发送data表单数据
这个内容相信做过Web端的都不会陌生 ,
有时候你希望发送一些数据到URL(通常URL与CGI[通用网关接口]脚本 ,或其他WEB应用程序挂接)
在HTTP中,这个经常使用熟知的POST请求发送
文档评论(0)