!!!!!
学了辣么久,终于来的我喜欢的板块了
以前的也喜欢,这里最喜欢
!!!!!
"""
走进爬虫的大门
模拟浏览器——发送请求——获取相应
分类:1、数量不同:通用爬虫(浏览器目标无上限)/聚焦爬虫(专门抓取一类网站数据,抢票+评论控制)
2、是否以获取数据为目的:功能性爬虫(刷票、点赞)/数据增量爬虫(招聘信息)
3、根据url地址内容是否变化:变(基于url地址变化,内容也随之变化)/不变(地址不变,内容变化)
流程:url_list —— 向url发送请求,获取相应(需要http/https协议) —— 解析相应(提取url翻页获取详情) —— 保存数据
"""
"""
http协议/https协议
https比http更安全,但是性能低: http:超文本传输(80)
https:HTTP+SSL(443)
"""
"""
爬虫的请求头与响应头
content-Type
host 域名
Connection 长链接
Upgrade-Insecure-Requests 升级为HTTOP
* User-Agent 用户代理:提供系统信息和浏览器信息 Mozilla/5.0 市面上的浏览器都遵循这个规则(Macintosh;Inter Mac 05 X 系统版本号)
* Referer 页面跳转处(上一级网页),检查请求是否合法
* Cookie 保持会话(权限)、状态保持:判断是那个用户 有的需要VLP的登录状态,有时效性
Authorization 认证:用账号密码登录,会用在自己的账号上操作时用
响应头:
Set-Cookie
"""
"""
常见状态码:
200成功
302跳转
303对于POST相应进行重定向至新的url
307对于GET的相应进行重定向至新的url
403资源不可用;服务器理解客户请求,但拒绝处理它(没有权限)
404找不到页面
500服务器内部错误
503 服务器由于维护或者负载过多未能应答,在响应中可能会携带Retry-After响应头;有可能是因为爬虫频繁访问url,使服务器忽视爬虫请求,最终返回503
!!!!因为有反爬的存在,所有的状态码都不可信,一切以是否从抓包得到的响应中获取到数据为准!!!
network中抓包得到的源码才是判断依据,elements是渲染之后的源码不能作为判断标准
"""
"""
浏览器具有渲染功能,爬虫不具有
骨骼文件:html静态文件
肌肉文件:js文件/ajax请求
皮肤文件(好看):css/font字体/图片。。
抓包过程:根据发送请求的流程分别在骨骼/肌肉/皮肤文件 响应中查找数据
"""
"""requests模块
发送http请求,获取相应数据
"""