爬虫 (二)

1、POST和GET

​ get请求:

​ 1)创建url字符串(这个字符串中带有请求体)

​ 2)创建请求头

​ 3)根据url和请求头创建请求对象

​ 4)通过请求对象发起get请求

​ post请求:

​ 1)创建url字符串(这个字符串中不带请求体)

​ 2)创建请求头

​ 3)创建请求体

​ 4)根据url、请求头和请求体创建请求对象

​ 5)通过请求对象,发起post请求

2、ajax请求

​ 1、为什么会有ajax?

​ 由于前端语言JavaScript是一种单线程的语言,比如说对于一些耗时操作(读磁盘、请求网络),如果在一个主线程中去处理必然会造成前端页面的假死(主线程阻塞),解决的办法就是在做这些耗时操作的时候开启一个子线程去做(这样不会影响主线程的执行),但是js做不到,此时就需要ajax来做,我们开启一个ajax的时候,浏览就会给ajax单独开辟一个独立运行的环境,异于js的主线程,从而做到异步请求。

​ 2、在爬虫中如何判断并处理ajax请求?

​ 判断:

​ 1)从前端表面现象来看,局部刷新的请求怀疑是ajax

​ 2)从抓包工具中来看,如果抓到的请求头中含有ajax对象(XMLHttpRequest),一定ajax请求

​ 处理:

​ 1)判断是哪种请求

​ 2)根据不同请求方式创建不同的请求对像来处理

原文地址:https://www.cnblogs.com/gugubeng/p/9723879.html