世界上80%的爬虫是基于python开发的,学好爬虫技能,对后续的大数据分析,挖掘,机器学习提供重要的数据源
网络爬虫,是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本
爬虫的本质是什么
模拟浏览器打开网页,获取网页中我们想要的那部分数据
浏览器发送消息给网址所在的服务器,这个过程叫做http Request(请求)
服务器收到浏览器发送的消息后,根据发送的内容,作出相应的处理,然后把消息传给浏览器,这个过程叫做http Response(响应)
爬虫的基本流程
发起请求
通过http库向目标站点发起请求,也就是发送一个Request,请求可以包含额外的header等信息,等待服务器响应
获取响应内容
如果服务器能正常相应,会得到一个Response,其中的内容便是所要获取的页面内容,类型可能是html,json字符串,二进制数据(图片或者视频)等类型
解析内容
得到的内容可能是html,可以用正则,页面解析库进行解析
可能是json,可以直接转换为json对象解析
可能是二进制数据,可以做保存或者进一步处理
保存数据
保存形式多种多样,可以存为文本,可以保存为数据库,或者特定格式的文件
request包含
请求方式
主要有:get和post两种常用类型,两者的区别是get请求的数据放在url中,post则是放在头部
get:向指定的资源发出"显示请求".使用get方法操作应该只用在读取数据,
post:向指定资源提交数据,请求服务器进行处理(例如提交表单或者上传文件).数据被包含在请求文本中,这个请求可能会