首页 > 编程语言 > 详细

Python3 urllib 库

时间:2019-03-12 13:37:04      阅读:203      评论:0      收藏:0      [点我收藏+]
  1. urllib 简介
  2. urllib 基础模块
  3. 使用 urllib 发送请求
  4. 使用 urllib 进行身份验证
  5. 使用 urllib 设置代理服务器
  6. 使用 urllib 处理 Cookies
  7. 使用 urllib 处理异常
  8. 使用 urllib 解析链接
  9. 使用 urllib 分析 Robots 协议

 

1. urllib 简介

(1) urllib 是 Python 内置的 HTTP 请求库,用来向服务器发送 HTTP 请求
(2) 在 Python2.x 中,有 urllib 和 urllib2 两个模块;在 Python3.x 中,urllib2 合并到了 urllib 中
(3) 在 Python2.x 中使用 import urllib, urllib2 ;在 Python3.x 中使用 import urllib
(4) 在 Python2.x 中使用 urllib2.urlopen ;在 Python3.x 中使用 urllib.request.urlopen
(5) 在 Python2.x 中使用 urllib2.Request ;在 Python3.x 中使用 urllib.request.Request
(6) 在 Python2.x 中使用 urllib.quote ;在 Python3.x 中使用 urllib.request.quote
(7) 在 Python2.x 中使用 cookielib.CookieJar ;在 Python3.x 中使用 http.CookieJar
(8) 在 Python2.x 中使用 urllib.urlencode ;在 Python3.x 中使用 urllib.parse.urlencode

 

2. urllib 基础模块

(1) urllib.request:最基本的HTTP请求模块,用来模拟发送请求,就像在浏览器里输入网址然后回车一样
(2) urllib.error:异常处理模块,如果出现请求错误,我们可以捕获这些异常,然后进行重试或其他操作以保证程序不会意外终止

(3) urllib.parse:一个工具模块,提供了许多 URL 处理方法,比如拆分、解析、合并等
(4) urllib.robotparser:主要是用来识别网站的 robots.txt 文件,然后判断哪些网站可以爬,哪些网站不可以爬,它其实用得比较少

 

3. 使用 urllib 发送请求

使用 urllib 的 request 模块提供了最基本的构造HTTP请求的方法,使用它可以实现请求的发送并得到相应,常用方法如下:

(1) urllib.request.urlopen(url, data=None, timeout=n) 用于发送HTTP请求并得到相应

In [1]: import urllib.request                                                                                                                                                                
In [2]: response = urllib.request.urlopen("http://www.baidu.com/")    //发送HTTP请求
In [3]: response.read().decode(utf-8)    //read()方法用于获取响应内容,readline(),readlines()也可以
In [4]: response.status                    //status属性用于获取响应状态码
In [5]: response.getcode()                 //getcode()方法用于获取响应状态码
In [6]: response.geturl()                  //geturl()方法用于获取请求的源地址
In [7]: response.getheaders()              //getheaders()方法用于获取响应头信息
In [8]: response.getheader(Server)       //getheader()方法用于获取指定的响应头信息

 

 

 

 


(2) urllib.request.Request()

 

 

 

 

    

Python3 urllib 库

原文:https://www.cnblogs.com/pzk7788/p/10515677.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!