Python urllib.request对象案例解析


Posted in Python onMay 11, 2020

刚刚接触爬虫,基础的东西得时时回顾才行,这么全面的帖子无论如何也得厚着脸皮转过来啊!

什么是 Urllib 库?

urllib 库 是 Python 内置的 HTTP 请求库。urllib 模块提供的上层接口,使访问 www 和 ftp 上的数据就像访问本地文件一样。

有以下几种模块:

1.urllib.request 请求模块

2. urllib.error 异常处理模块

3. urllib.parse url 解析模块

4. urllib.robotparser robots.txt 解析模块

Urllib 库下的几种模块基本使用如下:

urllib.request

关于 urllib.request: urllib.request 模块提供了最基本的构造 HTTP (或其他协议如 FTP)请求的方法,利用它可以模拟浏览器的一个请求发起过程。利用不同的协议去获取 URL 信息。它的某些接口能够处理基础认证 ( Basic Authenticaton) 、redirections (HTTP 重定向)、 Cookies (浏览器 Cookies)等情况。而这些接口是由 handlers 和 openers 对象提供的。

1.常用的方法有

  • read()==读取文件内容

  • geturl()==获取请求url

  • getheaders()==获取http请求头信息

  • getcode()==获取状态码

  • readlines()==获取一行

2.案例

#coding=utf-8
#import urllib.request
#=========response方法使用
#read()==读取文件内容
#geturl()==获取请求url
#getheaders()==获取http请求头信息
#getcode()==获取状态码
#readlines()==获取一行
#url="http://www.baidu.com";
#response = urllib.request.urlopen(url);
#=====案例1
# str = response.read().decode();#这样通过decode转换为utf8
# with open("baidu.html","w",encoding="utf8") as fp:
#   fp.write(str);
#=====案例2通过字节流写=默认通过read读取的是字节流
# with open("bai.html","wb") as fp:
#   fp.write(response.read()); 
#==使用字节流读取存图片
# image_url='https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3772530225,1800402028&fm=26&gp=0.jpg';
# response = urllib.request.urlopen(image_url);
# with open("mv.jpg",'wb') as fp:
#   fp.write(response.read());
#案例3==使用内置函数读取图片
#image_url='https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3772530225,1800402028&fm=26&gp=0.jpg';
#urllib.request.urlretrieve(image_url,"chun.jpg");

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现图片批量剪切示例
Mar 25 Python
举例讲解Python中的list列表数据结构用法
Mar 12 Python
python编程通过蒙特卡洛法计算定积分详解
Dec 13 Python
Python中常用信号signal类型实例
Jan 25 Python
django使用xlwt导出excel文件实例代码
Feb 06 Python
在Django中输出matplotlib生成的图片方法
May 24 Python
详解python3中tkinter知识点
Jun 21 Python
Python/Django后端使用PIL Image生成头像缩略图
Apr 30 Python
python导包的几种方法(自定义包的生成以及导入详解)
Jul 15 Python
Tensorflow实现多GPU并行方式
Feb 03 Python
Python图像处理库PIL的ImageDraw模块介绍详解
Feb 26 Python
python模拟浏览器 使用selenium进入好友QQ空间并留言
Apr 12 Python
python将dict中的unicode打印成中文实例
May 11 #Python
ansible-playbook实现自动部署KVM及安装python3的详细教程
May 11 #Python
Python转换字典成为对象,可以用"."方式访问对象属性实例
May 11 #Python
Python3自定义json逐层解析器代码
May 11 #Python
Python3自定义http/https请求拦截mitmproxy脚本实例
May 11 #Python
Python 找出出现次数超过数组长度一半的元素实例
May 11 #Python
Pycharm如何导入python文件及解决报错问题
May 10 #Python
You might like
使用zend studio for eclipse不能激活代码提示功能的解决办法
2009/10/11 PHP
离开页面时检测表单元素是否被修改,提示保存的js代码
2010/08/25 Javascript
再次分享18个非常棒的jQuery表格插件
2011/04/10 Javascript
jQuery Tools Dateinput使用介绍
2012/07/14 Javascript
JS中showModalDialog 的使用解析
2013/04/17 Javascript
js浮点数保留两位小数点示例代码(四舍五入)
2013/12/26 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
2015/09/04 Javascript
JS原型对象的创建方法详解
2016/06/16 Javascript
JS实现页面进入和返回定位到具体位置
2016/12/08 Javascript
jQuery插件JWPlayer视频播放器用法实例分析
2017/01/11 Javascript
详解AngularJS controller调用factory
2017/05/19 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
vue父组件通过props如何向子组件传递方法详解
2017/08/16 Javascript
从setTimeout看js函数执行过程
2017/12/19 Javascript
浅谈Angular7 项目开发总结
2018/12/19 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
taro小程序添加骨架屏的实现代码
2019/11/15 Javascript
Vue+Element自定义纵向表格表头教程
2020/10/26 Javascript
[33:15]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VP VS Mineski
2018/03/31 DOTA
使用python编写监听端
2018/04/12 Python
pandas 使用apply同时处理两列数据的方法
2018/04/20 Python
Python中实现变量赋值传递时的引用和拷贝方法
2018/04/29 Python
Python笔记之观察者模式
2019/11/20 Python
Python通过TensorFLow进行线性模型训练原理与实现方法详解
2020/01/15 Python
python匿名函数lambda原理及实例解析
2020/02/07 Python
Python如何将函数值赋给变量
2020/04/28 Python
Python魔术方法专题
2020/06/19 Python
python 利用panda 实现列联表(交叉表)
2021/02/06 Python
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
波兰最大的电商平台:Allegro.pl
2021/02/06 全球购物
Yahoo-PHP面试题3
2012/01/14 面试题
教师党的群众路线教育实践活动个人整改措施
2014/11/04 职场文书
Win11 Build 21996.1 Dev版怎么样? win11系统截图欣赏
2021/11/21 数码科技
MySQL的存储过程和相关函数
2022/04/26 MySQL
Tomcat配置访问日志和线程数
2022/05/06 Servers