爬虫笔记(1):爬虫原理

爬虫基本流程:

1) 发起请求:

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

2) 获取响应内容:

得到Response,得到的类型可能有HTML,Json字符串,二进制数据(如图片视频)等类型。

3) 解析内容:

对HTML:通过正则表达式,网页解析库
对Json:通过转为Json对象
图片/视频:二进制数据

4)保存数据

以各种形式存到数据库

HTTP Response包含的:

1)状态码:

200:请求成功
300:转其它网址
400:连接出错
500:服务器出错

2)响应头:

内容类型
内容长度
服务器信息
设置Cookie命令

3)响应体

网页HTML
图片
二进制数据

抓取的信息

1) HTML信息,json信息

2)图片/视频:二进制保存

3) 其它

解析方式

1)直接处理(split去空格)

2)Json解析

3)正则表达式

4) BeautifulSoup

5) Pyquery

6) XPath

解决JavaScript渲染的问题

1)分析Ajax请求:

找到数据接口,直接请求json数据并解析。

2)Selenium模拟浏览器

from selenium import webdriver
driver = webdriver.Chrome()
对driver进行操作(对driver.page_source进行操作)

3)Splash

4)PyV8、Ghost.py

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