爬虫概念、工具和HTTP

本文永久链接:https://tnanko.github.io/posts/8aff4f2e.html

【目录】

  • 1.什么是爬虫
  • 2.爬虫的数据去哪了
  • 3.需要的软件和环境
    • python3
    • PyCharm
    • chrome浏览器
  • 4.浏览器的请求
    • url
    • 浏览器请求url地址
    • 爬虫请求url地址
  • 5.认识HTTP、HTTPS
    • HTTP:超文本传输协议
    • HTTPS:HTTP + SSL(安全套接字层)
    • get请求和post请求的区别
    • HTTP协议之请求
    • HTTP协议之响应

1.什么是爬虫

  • 爬虫就是模拟客户端(浏览器)发送网络请求,获取响应,按照规则提取数据的程序;
  • 模拟客户端(浏览器)发送网络请求:照着浏览器发送一模一样的请求,获取和浏览器一模一样的数据。

2.爬虫的数据去哪了

  • 呈现出来:展示在网页上,或者是展示在app上;
  • 进行分析:从数据中寻找一些规律。

3.需要的软件和环境

python3

  • 基础语法(字符串,列表,字典,判断和循环)
  • 函数(函数的创建和调用)
  • 面向对象(如何创建一个类,如何使用这个类)

PyCharm

  • python编译器

chrome浏览器

  • 分析网络请求用的

4.浏览器的请求

url

  • 在chrome中点击检查,点到network;
  • url = 请求的协议 + 网站的域名 + 资源的路径 + 参数。

浏览器请求url地址

  • 当前url对应的响应 + js + css + 图片 → elements中断的内容。

爬虫请求url地址

  • 当前url对应的响应。
  • elements的内容和爬虫获取到的url地址的响应不同,爬虫中需要以当前url地址对应的响应为准提取数据。
  • 当前url地址对应的响应在哪里
    • 从network中找到当前的url地址,点击response;
    • 在页面在右键显示网页。

5.认识HTTP、HTTPS

HTTP:超文本传输协议

  • 以明文的形式传输;
  • 效率更高,但是不安全。

HTTPS:HTTP + SSL(安全套接字层)

  • 传输之前数据先加密,之后解密获取内容;
  • 效率较低,但是安全。

get请求和post请求的区别

  • get请求没有请求体,post有请求体;get请求把数据放到url地址中;
  • post请求常用于登录注册;
  • post

HTTP协议之请求

  • 1.请求行
  • 2.请求头
    • User-Agent:用户代理(对方服务器能够通过User-Agent知道当前请求对方资源的是什么浏览器)
      • 如果我们需要模拟移动端(手机版)浏览器,对应的就需要把User-Agent改成移动端
    • Cookie:用来存储用户信息的,每次请求会被携带上发送给对方的浏览器
      • 要获取登录上才能访问的页面;
      • 对方的服务器会通过cookie来判断我们是一个爬虫。
  • 3.请求体(携带数据)
    • get 请求没有请求体
    • post请求有请求体

HTTP协议之响应

  • 1.响应头
    • Set-Cookie:对方服务器通过该字段设置cookie到本地
  • 2.响应体
    • url地址对应的响应

本文作者: 赵赟
本文链接: https://tnanko.github.io/posts/8aff4f2e.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!

你可能感兴趣的:(爬虫笔记)