爬虫是什么?
向网站发起请求,然后获取资源数据
通过程序来模拟人的请求,获取诸如json,图片,源码,文字等等这样的数据,然后进行分析使用,当然也包括通过一些请求,让网站做出一些改变(如,抢票,刷课等等)
爬虫基本流程。
方式1:提交请求->下载网页代码->进行解析
方式2:模拟发送请求->拿到网页代码,提取数据->将数据存放于数据库中
请点击此处输入图片描述
发起请求
使用http库向目标站点发起请求
Request包含:请求头、请求体等
Request模块缺陷:无法加载JavaScript和css样式
获取响应内容
如果服务器能正常响应,则会得到一个Response
Response包含:可能是HTML代码,也可能是json数据,或者是图片,视频等文件
解析内容
解析html数据:最常用也最强大的便是正则(re)了,但是够方便,另外还有如beautifulsoup,xpath这样的模块
解析json数据:requests自带json直接解析,另外可以使用json模块
解析二进制数据:可以以二进制形式写入文件中,另外也可以使用requests.content,一般图片和视频都是以这种形式保存
保存数据
数据库(MySQL,Mongdb、Redis)
http协议 请求与响应。
Request:模拟浏览器将数据,请求发送给服务器。
Response:服务器接收请求,分析用户请求,然后返回相应的数据
附带一波User-Agent大全:
safari 5.1 – MAC
User-Agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50
safari 5.1 – Windows
User-Agent:Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50
Firefox 4.0.1 – MAC
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Firefox 4.0.1 – Windows
User-Agent:Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Opera 11.11 – MAC
User-Agent:Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.8.131 Version/11.11
Opera 11.11 – Windows
User-Agent:Opera/9.80 (Windows NT 6.1; U; en) Presto/2.8.131 Version/11.11
Chrome 17.0 – MAC
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11
其他的以及移动端的就不一一打出来了,如果有需要的朋友可以私信一下我。
整理不易,大家如果喜欢可以点赞收藏,如果想要学习爬虫,可以加一下我的q-u-n,719-139-688,么么哒。
领取专属 10元无门槛券
私享最新 技术干货