爬虫学习(一)——requests库
一、安装
cmd-->pip install requests
安装测试
>>> import requests >>> r = requests.get("http://www.baidu.com") >>> r.status_code 200 >>> r.text
二、Requests库的get()方法
r=requests.get(url)
返回一个包含服务器的资源的Response对象,构造一个向服务器请求资源的Request对象。
Response对象的属性
三、爬取网页的通用代码框架
“网络连接有风险,异常处理很重要”
通用框架
r.raise_for_status()在方法内部判断r.status_code是否等于200,不需要增加额外if语句,便于try-except异常处理
四、HTTP协议及Requests库方法
1.HTTP 超文本传输协议,是一个基于“请求与响应”模式的、无状态的应用层协议。
请求与响应:用户发出请求,服务器作出响应。无状态指的是第一次与第二次请求之间无关联。应用层协议指的是该协议工作在TCP协议之上。
HTTP协议采用URL作为定位网络资源的标识。URL:http://IP
五、网络爬虫的限制
·来源审查:判断User-Agent进行限制
检查来访HTTP协议头的User-Agent域,只响应浏览器或友好爬虫的访问。
·发布公告:Robots协议(robots.txt)
告知所有爬虫网站的爬取策略,要求爬虫遵守
tips:
爬虫对速度敏感指的是爬取的速度跟不上网页或网站更新的速度
爬取亚马逊:使用代码模拟浏览器,再发送爬虫申请。因为亚马逊使用的是外网。
资源来自中国大学MOOC——Python网络爬虫与信息提取
技术小白,如有错误和建议欢迎指出,欢迎在评论区讨论
作者:博客园 - 麦麦旋
出处:https://www.cnblogs.com/maimai-new/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
若内容有侵犯您权益的地方,请公告栏处联系本人,本人定积极配合处理解决。