美文网首页
02、爬虫基本原理

02、爬虫基本原理

作者: 即将拥有八块腹肌的程序猿 | 来源:发表于2019-07-24 21:48 被阅读0次

1、什么是爬虫?

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

2、爬虫基本流程

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

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

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

保存数据:保存形式多样,可以存为文本,也可以保存至数据库,或者保存特定格式的文件。

请求和响应 请求

3、请求的内容主要有:

请求方式:get,post、请求URL、请求头、请求体

响应

4、响应的内容主要有:

响应状态、响应头、响应体

5、实际操作

5.1、get请求百度

>>> import requests

>>> response = requests.get('http://www.baidu.com')

>>> print(response.text)

发出get请求

5.2、打印响应的其他内容

>>> print(response.headers)

打印响应头

>>> print(response.status_code)

打印响应代码

5.3、添加请求头

添加请求头信息

6、能抓怎样的数据?

能抓取怎样的信息

可以抓取:网页文本、图片、视频、其他

7、怎样来解析?

解析方式

爬取下来的数据解析方式主要有:直接处理、Json解析、正则表达式、BeautifulSoup、PyQuery、XPath

8、为什么我抓到的和浏览器看到的不一样?

部分页面存在JavaScript渲染

9、怎样解决JavaScript渲染的问题?

解决JavaScript渲染

第一种是分析Ajax请求,第二种是通过Selenium或WebDriver模拟浏览器渲染

10、可以怎样保存数据?

保存数据的方法

保存数据的方法:文本、关系型数据库、非关系型数据库、二进制文件

相关文章

网友评论

      本文标题:02、爬虫基本原理

      本文链接:https://www.haomeiwen.com/subject/jzmfrctx.html