15天学会爬虫 第一天

爬虫

第一天

1. 爬虫的用途

1.爬取数据用做网站展示

2.爬取数据用来为大数据或者人工智能服务

2. 什么是爬虫?

模拟浏览器发送请求,获取相应的数据

3. 爬虫的分类

3.1 通用爬虫

搜索引擎的爬虫,爬取整个互联网的数据

3.2 聚焦爬虫

针对特定网站专门写的抓取数据的程序

聚焦爬虫的流程
  1. 准备url列表
  2. 拿到一个url发起请求,获取响应
  3. 响应提取
    • 提取的是数据,数据保存
    • 提取的是URL,放入URL列表

rootbots协议: 网站规定搜索殷勤可以爬取的内容范围,只是道德约束

4. 爬虫程序的响应

爬虫程序的响应 以url对应的响应为准,不能以elements为准

5. 重要的请求头

  • Cookie: 保存用户登录的凭证,如果要反问登录后的页面去获取数据库,必须携带Cookie
  • User—Agent: 表示请求者的身份,反爬的必要手段,每次请求都必须携带
  • Referer: 页面来源处

6. get和post请求的区别

  1. 最直观的就是语义上的区别,get用于获取数据,post用于提交数据.
  2. get参数有长度限制(受限于URL长度,具体的数值取决于浏览器和服务器的限制),而post无限制
  3. get请求,请求的数据会附加在url之后,以 ? 分割URL和传输数据,多个参数用 & 连接,而post请求会把请求的数据放置在HTTP 请求体中.
  4. GET的语义是请求获取指定的资源。GET方法是安全、幂等、可缓存的(除非有 Cache-ControlHeader的约束),GET方法的报文主体没有任何语义。POST的语义是根据请求负荷(报文主体)对指定的资源做出处理,具体的处理方式视资源类型而不同。POST不安全,不幂等,(大部分实现)不可缓存。为了针对其不可缓存性,有一系列的方法来进行优化,以后有机会再研究(FLAG已经立起)。还是举一个通俗栗子吧,在微博这个场景里,GET的语义会被用在「看看我的Timeline上最新的20条微博」这样的场景,而POST的语义会被用在「发微博、评论、点赞」这样的场景中。(该条转载自5的博客)
  5. 更多资料,请查看post请求和get请求的区别
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章