发布于2020-02-17 21:14 阅读(873) 评论(0) 点赞(28) 收藏(1)
爬虫的工作分为四步:
1.获取数据。爬虫程序会根据我们提供的网址,向服务器发起请求,然后返回数据。
2.解析数据。爬虫程序会把服务器返回的数据解析成我们能读懂的格式。
3.提取数据。爬虫程序再从中提取出我们需要的数据。
4.储存数据。爬虫程序把这些有用的数据保存起来,便于你日后的使用和分析。
这一篇的内容就是:获取数据。
首先,我们将会利用一个强大的库——requests来获取数据。
在电脑上安装的方法是:Mac电脑里打开终端软件(terminal),输入pip3 install requests,然后点击enter即可;Windows电脑里叫命令提示符(cmd),输入pip install requests 即可。
(requests库可以帮我们下载网页源代码、文本、图片,甚至是音频。“下载”本质上是向服务器发送请求并得到响应。
Pip是一个Python的包管理工具。)
先来看**requests.get()**方法
requests.get()的具体用法如下:
import requests
#引入requests库
res = requests.get('URL')
#requests.get是在调用requests库中的get()方法,它向服务器发送了一个请求,括号里的参数是你需要的数据所在的网址,然后服务器对请求作出了响应。
#我们把这个响应返回的结果赋值在变量res上。
print(type(res))
#打印变量res的数据类型
Response对象常用的四个属性:
1. res.status_code
检查请求是否成功
print(res.status_code)
#打印变量res的响应状态码,以检查请求是否成功
响应状态码 | 说明 | 举例 | 说明 |
---|---|---|---|
1xx | 请求收到 | 100 | 继续提出请求 |
2xx | 请求成功 | 200 | 成功 |
3xx | 重定向 | 305 | 应使用代理访问 |
4xx | 客户端错误 | 403 | 禁止访问 |
5xx | 服务器端错误 | 503 | 服务不可用 |
2.res.content
能把Response对象的内容以二进制数据的形式返回,适用于图片、音频、视频的下载
3.res.text
可以把Response对象的内容以字符串的形式返回,适用于文字、网页源代码的下载
4.res.encoding
能帮我们定义Response对象的编码
(遇上文本的乱码问题,才考虑用res.encoding)
小结:
获取数据,本质就是通过URL去向服务器发出请求,服务器再把相关内容封装成一个Response对象返回给我们,这是通过requests.get()实现的,而获取到的Response对象下有四个以上常用的属性。
爬虫协议:
Robots协议是互联网爬虫的一项公认的道德规范,它的全称是“网络爬虫排除标准”(Robots exclusion protocol),这个协议用来告诉爬虫,哪些页面是可以抓取的,哪些不可以。
如何查看网站的robots协议呢?在网站的域名后加上/robots.txt就可以了。
作者:gg
链接:https://www.pythonheidong.com/blog/article/231676/cc22ad469f670c89d1f5/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!