17.3.12--urllib2模块
1---urllib2是非常强大的Python网络资源访问模块,它的功能和urllib模块相似
python标准库中的urllib2模块可以说是urlib模块的一个升级的复杂版,不需要另外下载,
比如访问的网络资源需要http验证,
需要cookie信息,
模仿普通浏览器一样去访问网络,网页资源
这个时候用urllib2
2---urllib2模块介绍
1)设置timeout超时设置:
import urllib2
test=urllib2.urlopen('http://www.iplaypy.com/',timeout=15)
#2个参数,一个是url地址,一个是超时的时候,这次的测试设定值是15
2)在访问的时候加入Header头部信息
header={“User-Agent”:“Mozilla-firefox24.0”} #字典类型
urllib2.urlopen(url,header)
像上面这样的操作,就可以加上Header头部信息,用来模仿浏览器行为,应对一些禁止爬虫的网络资 源,非常实用
3)用urllib2得到http网页状态码
import urllib2
test=urllib2.urlopen("http://baidu.com/”)
test.code
这样就可以访问百度的网页状态码,200证明能访问,得到网页内容
4)使用urllib2对Cookie进行处理
import urllib2
import cookielib
cookie=cookielib.CookieJar() #后面函数方法要注意C和J是大写的
opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
response=opener.open('http://www.baidu.com')
for item in cookie:
if item.name=="some——cookie_item_name"
print item.value
5)urlopen()----是处理的入口函数,获取OpenerDiretor对象,调用Opener.open()
默认的OpenDiretor对象保存在变量_open中,采用Singleton模式
build_opener()----
install_opener()---将OpenerDirector对象保存在变量_opener中,作为默认opener使用
class Openerdirector
class Resquest---作为一个信息对象,保存和url相关的参数,包括headers,data,proxy等,用于url参数传递
class HTTPHandler---类继承者关系:BaseHandler-->AbstracHTTPHandler-->HTTPHandler
调用httplib.HTTPConnection完成HTTp的处理
17.3.12--urllib2模块的更多相关文章
- cookielib和urllib2模块相结合模拟网站登录
1.cookielib模块 cookielib模块的主要作用是提供可存储cookie的对象,以便于与urllib2模块配合使用来访问Internet资源.例如可以利用 本模块的CookieJar类的对 ...
- Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 httplib模块 django和web服务器整合 wsgi模块 gunicorn模块
Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 ...
- python网页请求urllib2模块简单封装代码
这篇文章主要分享一个python网页请求模块urllib2模块的简单封装代码. 原文转自:http://www.jbxue.com/article/16585.html 对python网页请求模块ur ...
- 【Python】Python的urllib模、urllib2模块的网络下载文件
因为需要从一些下载一个页PDF文件.但是需要下载PDF有数百个文件,这是不可能用人工点击下载.只是Python有相关模块,所以写一个程序PDF文件下载,顺便熟悉Python的urllib模块和ulrl ...
- cookielib和urllib2模块结合模拟网站登录
1.cookielib模块 cookielib模块的主要作用就是提供可存储cookie的对象,以便于与urllib2模块配合使用来访问internet资源,例如可以利用本模块的cookiejar类的对 ...
- 洗礼灵魂,修炼python(54)--爬虫篇—urllib2模块
urllib2 1.简介 urllib2模块定义的函数和类用来获取URL(主要是HTTP的),他提供一些复杂的接口用于处理: 基本认证,重定向,Cookies等.urllib2和urllib差不多,不 ...
- urllib模块和urllib2模块的区别
一开始我以为urllib2模块单纯是urllib模块的升级版,因为我看到它们都有urlopen方法,但是经过查找资料,发现两者差别还是很大的. 这是我在网上看到的总结: urllib2可以接受一个Re ...
- Python的urllib和urllib2模块
Python的urllib和urllib2模块都做与请求URL相关的操作,但他们提供不同的功能.他们两个最显着的差异如下: urllib2可以接受一个Request对象,并以此可以来设置一个URL的h ...
- urllib2模块、cookielib模块
urllib2模块 urllib模块和urllib模块类似,用来打开URL并从中获取数据.与urllib模块不同的是,urllib模块不仅可以使用urlopen() 函数还可以自定义Opener来访问 ...
- urllib2模块中文翻译与学习 - Python 2.7.8官方文档
总结 目的 打开指定网址 要求 了解需要处理的网站的操作流程 数据包的构造与提交 对可能的响应处理选择合适的处理器(模块内的各种 *Handler()) 核心 urllib.urlencode(que ...
随机推荐
- 4. Retrieving a mapper(检索映射器)
Retrieving a mapper(检索映射器) 4.1. The Mappers factory(映射工厂) 可以通过 org.mapstruct.factory.Mappers 类检索映射器实 ...
- Elasticsearch 过滤
章节 Elasticsearch 基本概念 Elasticsearch 安装 Elasticsearch 使用集群 Elasticsearch 健康检查 Elasticsearch 列出索引 Elas ...
- P 1019 数字黑洞
转跳点:
- easyUI中,z-index失效问题
1.z-index是css的属性,第一种div设置css的z-index时,是不起作用的,最后设置在style中才起作用了,比较诡异的一件事情. 2.还有一种情况就是,遮盖层在dialog弹出层的下面 ...
- Django ORM多表查询练习
ORM多表查询 创建表结构: from django.db import models # 创建表结构 # Create your models here. class Class_grade(mod ...
- 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:Spring框架的基本思想
EJB的学习成本很高,开发效率却不高,需要编写很多重复的代码,这些问题阻止了EJB的继续发展.就在EJB技术止步不前的时候,Spring框架在合适的时机出现了,Spring框架和EJB不同,Sprin ...
- 常用模块-正则re
常用模块之正则模块 """ 正则表达式与re模块的关系 1.正则表达式是一门独立的技术,任何语言均可使用 2.python中要想使用正则表达式需要通过re模块 " ...
- git本地代码回滚
git本地操作有时会有误删误改并提交的时候,此时可以通过回滚获得之前的特定版本 1. 查看log 输入 git log 查看commit记录 [xxxxxxx]$ git log 结果大致如下(根 ...
- pycharm和python安装
1.pycharm安装:https://www.cnblogs.com/dcpeng/p/9031405.html 2,python安装:https://www.liaoxuefeng.com/wik ...
- App开发(连接外部服务器)
第一步:导入httpClient第二步: 容许网络接口权限<uses-permission android:name="android.permission.INTERNET" ...