Python urllib.request对象案例解析
刚刚接触爬虫,基础的东西得时时回顾才行,这么全面的帖子无论如何也得厚着脸皮转过来啊!
什么是Urllib库?
urllib库是Python内置的HTTP请求库。urllib模块提供的上层接口,使访问www和ftp上的数据就像访问本地文件一样。
有以下几种模块:
1.urllib.request请求模块
2.urllib.error异常处理模块
3.urllib.parseurl解析模块
4.urllib.robotparserrobots.txt解析模块
Urllib库下的几种模块基本使用如下:
urllib.request
关于urllib.request:urllib.request模块提供了最基本的构造HTTP(或其他协议如FTP)请求的方法,利用它可以模拟浏览器的一个请求发起过程。利用不同的协议去获取URL信息。它的某些接口能够处理基础认证(BasicAuthenticaton)、redirections(HTTP重定向)、Cookies(浏览器Cookies)等情况。而这些接口是由handlers和openers对象提供的。
1.常用的方法有
- read()==读取文件内容
- geturl()==获取请求url
- getheaders()==获取http请求头信息
- getcode()==获取状态码
- readlines()==获取一行
2.案例
#coding=utf-8 #importurllib.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 #withopen("baidu.html","w",encoding="utf8")asfp: #fp.write(str); #=====案例2通过字节流写=默认通过read读取的是字节流 #withopen("bai.html","wb")asfp: #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); #withopen("mv.jpg",'wb')asfp: #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");
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。