python urllib2模块安装,Python urllib和urllib2模块学习(二)
一、urllib其它函数
前面介绍了 urllib 模块,以及它常用的 urlopen() 和 urlretrieve()函数的使用介绍。当然 urllib 还有一些其它很有用的辅助方法,比如对 url 进行编码、解码等等。
辅助方法:
1. urllib.quote(string[,safe]) : 对字符串进行编码,参数safe指定了不需要编码的字符;
urllib.unquote(string): 对字符串进行解码;
2. urllib.urlencode(query[,doseq]): 将dict或都包含两个元素的元组列表转换成url参数。
例如:
>>> dict1 = {'name':'baidu','Local':'CD'}
>>> data = urllib.urlencode(dict1)
>>> print data
Local=CD&name=baidu
3. urllib.pathname2url(path): 将本地path转换成url路径
urllib.url2pathname(path): 将url路径转换成本地路径
二、urllib与urllib2的区别:
urllib 和 urllib2 都是接受URL请求的相关模块,但是提供了不同的功能。两个最显著的不同如下:
urllib2可以接受一个Request类的实例来设置URL请求的headers,urllib仅可以接受URL。这意味着,你不可以伪装你的User Agent字符串等。
urllib提供urlencode方法用来GET查询字符串的产生,而urllib2没有。这是为何urllib常和urllib2一起使用的原因。
三、urllib2常用函数:
1.urllib2.urlopen()方法
即可以接受一个字符串型的url 地址或者一个 Request 对象。将打开这个 url 并返回结果为一个像文件对象一样的对象.
urlopen()是最简单的请求方式,它打开url并返回类文件对象,并且使用该对象可以读取返回的内容。参数url可以是包含url的字符串,也可以是urllib2.request类的实例。data是经过编码的post数据(一般使用urllib.urlencode()来编码)。timeout是可选的超时期(以秒为单位),供所有阻塞操作内部使用。
常用方法:
1. read(),readline(),readlines(): 以字节字符串形式读取(nbytes个数据、单行、返回一个列表)
2.getcode(): 返回整数形式的HTTP响应代码,比如成功返回200,未找到文件时返回404
3.info() : 返回映射对象,该对象带有与url关联的信息,对HTTP来说,返回的服务器响应包含HTTP包头。
2. urllib2.Request()方法
语法:Request(url [data,headers [,origin_req_host ,[unverifiable]]]])
对于比较简单的请求,urlopen()的参数url就是一个代表url的但如果需要执行更复杂的操作,如修改HTTP报头,可以创建Request实例并将其作为url参数。
新建Request实例。url为url字符串,data是伴随url提交的数据(比如要post的数据)。不过要注意,提供data参数时,它会将HTTP请求从'GET'改为‘POST’。headers是一个字典,包含了可表示HTTP报头的键值映射(即要提交的header中包含的内容)。originreqhost通常是发出请求的主机的名称,如果请求的是无法验证的url(通常是指不是用户直接输入的url,比如加载图像的页面中镶入的url),则后一个参数unverifiable设为TRUE。
假设Request实例r,其比较重要的方法有下面几个:
r.add_data(data)向请求添加数据。如果请求是HTTP请求,则方法改为‘POST’。data是向指定url提交的数据,要注意该方法不会将data追教导之前已经设置的任何数据上,而是使用现在的data替换之前的。
r.add_header(key, val)向请求添加header信息,key是报头名,val是报头值,两个参数都是字符串。
r.addunredirectedheader(key, val)作用基本同上,但不会添加到重定向请求中。
r.set_proxy(host, type)准备请求到服务器。使用host替换原来的主机,使用type替换原来的请求类型。
python urllib2模块安装,Python urllib和urllib2模块学习(二)相关推荐
- 手机python软件下载安装,python手机下载安装教程
如何在手机上下载python 应用市场内搜索下载下载Python在您开始之前,在你的计算机将需要Python,但您可能不需要下载它. 首先检查(在命令行窗口输入python)有没有安装Python!如 ...
- windows安装python库_Windows安装Python机器学习包
Python 虽然是一门脚本语言,但借助诸如 Numpy.Scipy 等功能强大的 package(包),如今 Python 在科学计算.机器学习.数据挖掘方面都有较为广泛的应用.本教程介绍如何在 W ...
- 如何在VSCode中添加Python解释器并安装Python库
如何在VSCode中添加Python解释器并安装Python库 作者介绍 一. 安装VScode编辑器 二. 安装Python解释器 三. 在VScode中添加Python解释器 四. 创建项目并在V ...
- [python]Win7 X64安装python Scrapy
最近想研究一下python的爬虫,网上查找了一下资料,scrapy是python爬虫中比较牛b的存在,经过确认,确实是比较"牛B",安装这个scrapy库实在是"牛 ...
- python的网络请求库urllib、urllib2、urllib3、request的联系
文章目录 1. 简介 2. urllib 3. urllib2 4. urllib3 5. requests 6. 相关文章 1. 简介 urllib.urllib2.urllib3.request均 ...
- python压缩包怎么安装-Python学习笔记-打包发布Python模块或程序,安装包
Python模块.扩展和应用程序可以按以下几种形式进行打包和发布: python setup.py获取帮助的方式 python setup.py --help python setup.py --he ...
- python安装包-安装 Python 模块
安装 Python 模块¶ 作为一个流行的开源开发项目,Python拥有一个活跃的贡献者和用户支持社区,这些社区也可以让他们的软件可供其他Python开发人员在开源许可条款下使用. 这允许Python ...
- python第三方模块安装路径_Python第三方Window模块文件的几种安装方法
python安装第三方模块 使用软件管理工具pip python自带了包管理工具,就像手机app商城,91助手等软件的功能一样. python2与python3安装模块的方法相似,值得注意的是,你在p ...
- python db2 linux 安装,python安装DB2模块
PyDB2最新的更新是2008的PyDB2_1.1.1,在ubuntu14.0464位下直接安装不成功.需要做一些修改 一.解压后打开setup.py 找到#DB2_ROOT = "/opt ...
最新文章
- 通过分离dataSource 让我们的code具有更高的复用性.
- 【NCEPU】韩绘锦:扩散卷积神经网络
- java项目如何更改路径_Java修改eclipse中web项目的server部署路径问题
- Java 设计模式之装饰器模式
- Daily scrum 11.22
- 牛客网算法题目-最优乘车题解
- windows 系统删除服务命令 sc delete 服务名称
- 用vs2019制作简易计算器
- python大漠库_python类似大漠插件的库
- Scala编程思想高清中文版PDF
- 亚马逊入驻商用户画像分析
- 自定义皮肤进服务器不显示,我的世界自定义皮肤为什么不能显示 我的世界自定义皮肤如何显示...
- 12款精选浏览器插件推荐
- 【深度学习】Pytorch实现CIFAR10图像分类任务测试集准确率达95%
- 单片机看门狗是什么?工作原理?使用方法?
- 物联网新零售项目 物联网亿万级通信一站式解决方案EMQ
- 金蝶EAS8.61 金蝶SHR8.61 金蝶EAS8.6 金蝶EAS8.5 金蝶EAS8.2 金蝶EAS8.0 金蝶EAS7.5 金蝶EAS7.03 金蝶EAS7.01 金蝶EAS7.0
- MATLAB画聚类热图,使用ComplexHeatmap绘制热图
- 设计模式之15 - 解释器模式Interpreter
- c语言程序设计王延梅,关于举办2013年京联合大学计算机应用大赛等六项.doc