python爬虫入门一:爬虫基本原理

1. 什么是爬虫

爬虫就是请求网站并提取数据的自动化程序

2. 爬虫的基本流程

1)发送请求

通过HTTP库向目标站点发送请求,即发送一个Request。

请求可以包含额外的headers等信息,等待服务器相应

2)获取相应内容

服务器接到请求后,会返回一个Response,Response的内容就是所要获取的页面内容。

返回的Response可能是HTML、json、二进制数据(图片视频)等类型

3)解析内容

根据得到的Response类型,选择对应的方法进行解析

4)保存数据

将我们想要的数据提取出来进行保存。

3. Request

1)请求方式

最常见的请求方式是GET和POST。除此之外还有其他的方式,比如HEAD、PUT、DELETE、OPTIONS等

  • GET - 从指定的资源请求数据。
  • POST - 向指定的资源提交要被处理的数据

GET和POST最大的区别在于:

扫描二维码关注公众号,回复: 4571567 查看本文章

a. GET将所以请求的参数都放在url里;POST将所以请求的参数放在表单里

b. GET请求可以直接通过url访问;POST请求需要构建表单才能访问

2)请求的url

url全称统一资源定位符。通过url获得网页/文档/图片等

3)请求头

请求头是请求时的头部信息。如User-Agent、Host、Cookies等信息。

网页在进行反爬虫时,请求头是一个非常重要的判定元素

4)请求体

一般来说,在使用POST请求时,需要传入相应的请求体来获得Response

4. Response

1)状态码status

2XX:成功访问

3XX:重定向

4XX:请求错误

5XX:服务器错误

2)相应头 Response Headers

如内容类型、内容长度、服务器信息等

3)响应体

最主要的部分,包含了请求资源的内容,如网页HTML、图片二进制数据等

5. 处理JavaScript渲染问题

1)AjAX异步加载分析

2)Selenium/WebDriver 模拟浏览器操作

3)Splash模拟JS

4)PyV8、Ghost.py模拟加载JS

猜你喜欢

转载自www.cnblogs.com/xingyucn/p/10147147.html