爬虫入门——数据抓取

学习爬虫, 最初的操作便是模拟浏览器向服务器发出请求。使用一下库实现此请求
1.urllib库的使用
urllib 库是Python 内置的HTTP 请求库,包含以下四个模块:
1.request:http请求模块
2.error:异常处理模块
3.parse:工具模块,提供url的处理方法
4.rebotparser:识别网站robots.txt,判断网站能不能抓取
(1)发送请求使用request模块
1》urlopen()
url.request模块提供最基本的构造http请求的方法,模拟浏览器的一个请求得发起过程。
抓取源代码案例:
使用最基本的urlopen ()方法,可以完成最基本的简单网页的GET 请求抓取。
在这里插入图片描述
利用type()方法返回查看响应 的类型:
在这里插入图片描述
响应的类型的对象为HTTPResponse:主要包含主要包含read () 、rea d into ()、getheader(name )、
gethea ders () 、file no ()等方法,以及msg 、version 、status 、reason 、debuglevel 、ιlosed 等属性。
得到这个对象之后,我们把它赋值为response 变量,然后就可以调用这些方法和属性,得到返回
结果的一系列信息了。
比如:调用read ()方法可以得到返回的网页内容,调用status 属性可以得到返回结果的状态码,
如200 代表请求成功, 404 代表网页未找到等。
在这里插入图片描述
给链接传递一些参数的实现:
urllib.request.urlopen(url,data=None,[Timeout,]*,Cafile=None,capath=None,cadefault=False,context=None)
**data参数:**如果要添加该参数,并且是以字节流编码格式的内容,即bytes类型,则需要通过bytes()方法转化。如果传递了这个参数,则请求得方式不再是GET方式,而是POST方式。
在这里插入图片描述
这里我们传递了一个参数word ,值是hello 它需要被转码成bytes (字节流)类型。其中转字
节流采用了bytes ()方法,该方法的第一个参数需要是str (字符串)类型,需要用urllib.parse 模
块里的urlencode ()方法来将参数字典转化为字符串;第二个参数指定编码格式,这里指定为utf8 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值