爬虫基本概念

爬虫的概念

爬虫就是:模拟浏览器发送网络数据,获取请求响应

爬虫的流程

url—>发送请求,获取响应—>提取数据—>保存获取响应—>提取url地址,继续请求

浏览器的请求过程

在这里插入图片描述
浏览器获取数据包含:url地址对应的响应+js+css+jpg
爬虫会获取:url地址对应的响应
爬虫获取的内容和elements内容不一样,进行数据提取的时候,需要根据url地址对应的响应为准

url的形式

url的形式:scheme://host[:port#]/path/…/[?query-string][#anchor]

  • scheme:协议(例如:http https ftp)
  • host:服务器的ip地址或者域名
  • port:服务器的端口(如果是走协议默认端口,80 or 443)
  • path:访问资源的路径
  • query-string:参数,发送给http服务器的数据
  • anchor:锚(跳转到网页指定锚点位置)

http请求形式

在这里插入图片描述

http常见请求头 Request Headers

重点掌握:

  • User-Agent:告诉对方服务器是什么客户端在请求资源,爬虫中模拟浏览器非常重要的一个手段
  • Cookie:获取登录之后才能访问的资源
"""服务器的ip地址或者域名"""
Host: www.baidu.com	
""" 链接:长连接 """			
Connection: keep-alive		
""" 升级不安全的请求:浏览器告诉服务器我会把不安全的http请求全部转换成https形式进行发送 """
Upgrade-Insecure-Requests: 1	
""" 用户代理:展示了是以什么浏览器在什么平台访问的服务器 (服务器根据不同设备返回不同页面 手机端 pc端)""" 
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36
""" q=0.9 表示权重 浏览器告诉服务器 我更愿意接收html xml这种数据,其次是image * """
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
# 表示页面从哪个页面跳转过来的
Referer: https://www.baidu.com/
""" 告诉服务器可以接收到数据的编码方式 """
Accept-Encoding: gzip, deflate, br
""" 告诉服务器更愿意接收中文 其次是英文 """
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
""" 缓存 爬虫只需要关注 name value值"""
Cookie: BAIDUID=1522EA81CFA2C05D002EEE709F47F0C3:FG=1; BIDUPSID=1522EA81CFA2C05D002EEE709F47F0C3; PSTM=1547629798; BD_UPN=12314753; __cfduid=dd4409dcc34eb5caa8c85a58e66465fa91548159770; sug=3; ORIGIN=0; bdime=0;

常见的请求方法

  • get
  • post

get和post的请求的区别可以参考w3school
在这里插入图片描述

响应状态码

常见的状态码:

  • 200: 成功
  • 302: 临时转移至新的url
  • 307: 临时转移至新的url
  • 404: not found
  • 500: 服务器内部错误(服务器发现爬虫不想返回资源的时候也往往会返回500 此时考虑反反爬)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值