爬虫-5-URL格式和http格式

URL格式

在这里插入图片描述
说明:

  • 协议
    URL地址都有协议,有的看不到,但是在网址栏复制后粘贴到浏览器搜索框就可以看到
  • 参数
    ?开头&结尾的就是URL参数,很多时候参数没用,可以删掉,不影响页面内容。
  • anchor锚点(主播)
    后面爬取直播网址,可以用anchor爬取主播名字,前端讲过。
    带锚点的URL,实现页面跳转,跳转到对应的位置。
    带锚点和不带锚点请求的URL对应的响应是一致的。后面爬虫的时候可以直接把锚点删掉,不影响响应。

http请求形式

在这里插入图片描述

进百度主页查看具体的http形式

http常见请求头
在这里插入图片描述

  • 进入主页-右击查看-network-左侧name点一个URL请求-Headers
  • Headers
    共有General、Response Headers、Request Headers三个,查看Request Headers,点view source按钮,得到的内容就是上面图片的内容

.----请求行(用post请求才会有请求体)
GET / HTTP/1.1
.
----请求头部(是客户端告诉服务端的)
Host: www.baidu.com-----域名
.
Connection: keep-alive-----链接:保持链接,支持使用长链接,就不用频繁的三次握手四次挥手,提速
.
Cache-Control: max-age=0
.
Upgrade-Insecure-Requests: 1----升级不安全的请求,http请求是不安全的请求,转换成https
.
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.108 Safari/537.36------用户代理/浏览器身份标识,浏览器版本,电脑信息等,让服务器知道访问它的程序是什么样的,
.
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3------告诉服务器可以接收什么样的数据:文本、图片html页面
.
Accept-Encoding: gzip, deflate, br-----告诉服务器可以接收什么样的压缩方式,页面数据压缩为了提高效率
.
Accept-Language: zh-CN,zh;q=0.9-----可以接受的语言,q表示权重,更愿意接收中文
.
Cookie: PSTM=1499736978; BIDUPSID=0786E3FFBAAEF7BC3FED14E4DA59D6A9; BAIDUID=C730D2B58F59CFA882E60765BE1A04CA:SL=0:NR=10:FG=1; sug=3; sugstore=0;ORIGIN=0;bdime=0;MCITY=-315%3A;COOKIE_SESSION=0_0_1_0_1_8_0_0_0_1_2_0_0_0_3738_0_1559724257_0_1559720519%7C1%230_0_1559720519%7C1; delPer=0;BD_HOME=0;H_PS_PSSID=1440_21082_29520_28518_29098_29568_28838_29221_26350; BD_UPN=12314353
---- cookie是用来保存用户的个人信息,保存在浏览器本地,不安全,一个站点的cookie是有上限的,session保存在对方服务器,更安全,没有上限。
-------cookie之间用分号和空格隔开。等号前后就是network–cookies下,name和value对应的值,拿到name和value放到headers中就可以更好的模仿http请求,其它的内容不用管。

在这里插入图片描述

- User-Agent详解
点击红框处,刷新,可在Chrome浏览器中访问手机版的百度,还可以选择手机型号和放大比例。虽然访问的地址一样,但是网页版浏览器和手机版浏览器看到的内容是不一样的,服务器是根据User-Agent来区分的。爬虫通过模仿User-Agent就可以模仿浏览器请求数据,可以复制次数的User-Agent放到代码里来达到模仿的目的。

referer简介:
当前URL地址是从哪个URL过来的。

  • 请求头中User-Agent和cookie是重点
    一般来说带上User-Agent,偶尔带上cookie就可以模仿浏览器发送请求。如果还不行,就把上面的字段都带上。因为有时需要登录后才能请求数据,所以需要cookie。
    对方服务器可以通过cookie判断是否是爬虫,服务器可能抛出500或错误数据,此时需要反反爬虫。

常见的请求方法

  • get
    用的时候比较多
  • post
    用于提交表单时(密码安全),传输大量数据时(百度翻译)。

响应状态码

在这里插入图片描述

记住常用状态码即可
被识别为爬虫后可能会遇到500

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值