Python爬虫系列(1)

1.什么是爬虫

请求网站并提取数据的自动化程序。

换句话就是说,我们通过编写代码,模拟成浏览器,请求目标网页,并通过代码提取符合我们查找规则的数据,保存到数据库中。

2.爬虫的基本流程

(1)发起请求

​ 通过HTTP库向目标站点发起请求,即发起一个Request,请求可以包含额外的headers等信息,等待服务器响应。

(2)获取响应内容

​ 如果服务器能正常响应,会得到一个Response,Response的内容是所需要获取的页面内容,类型可能有HTML,Json字符串,二进制数据(如图片视频)等类型。

(3)解析内容

​ 得到的内容可能是HTML,可以使用正则表达式、网页解析库进行解析,可能是Json,可以直接转为Json对象解析,可能是二进制,可以做保存,或者进一步分析。

(4)保存数据

保存兴时多样,可以保存成文本,也可以保存到数据库。

3. Request 与Response

Python爬虫系列(1)

(1)浏览器就发送消息给该网址所在的服务器,这个过程叫做HTTP Request.

(2)服务器收到浏览器发送的消息后,能够根据浏览器发送的消息的内容,做相应处理,然后把消息回传给浏览器。这个过程叫做HTTP Response。

(3)浏览器收到服务器的Response信息后,会对信息进行相应的处理,然后展示。

Request

(1)请求方式

主要有GET、POST两种类型,另外还有HEAD、PUT、DELETE、OPTIONS等。

(2)请求URL

URL:统一资源定位符

(3)请求头

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

(4)请求体

post请求时的Form Data

Response

(1)响应状态

有多种响应状态,如200代表成功、301跳转、404找不到页面、502服务器错误

(2)响应头

如内容类型、内容长度、服务器信息,设置Cookie等

(3)响应体

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

可以抓取什么数据

(1)文本

(2)图片

(3)视频

(4)其他

解析方式:

(1)直接处理

(2)Json解析

(3)正则表达式

(4)BeautifulSoup

(5)PyQuery

解析方式:

(1)直接处理

(2)Json解析

(3)正则表达式

(4)BeautifulSoup

(5)PyQuery

(6)XPath

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-04-04
  • 2021-09-11
  • 2021-08-06
  • 2021-10-08
  • 2022-02-08
  • 2021-11-09
猜你喜欢
  • 2021-12-03
  • 2021-09-03
  • 2021-07-28
  • 2021-05-14
  • 2022-01-12
相关资源
相似解决方案