爬虫基本原理详解

xiaoxiao2021-02-28  53

一、什么是爬虫   爬虫就是用程序自动化访问网站并抓取数据。    二、.爬虫的基本流程   1.向服务器发起请求    通过HTTP库向目标站点发起请求,即发送一个Request,请求可以包含额外的headers等信息,等待服务器响应。    2.获取服务器响应内容    如果服务器能正常响应,会得到一个Response, Response的内容便是所要获取的页面内容,类型可能有HTML,Json字符串,二进制数据(如图片视频)等类型。   3.解析服务器响应内容   得到的内容可能是HTML,可以用正则表达式、网页解析库进行解析。可能是Json,可以直接转为Json对象解析,可能是二进制数据,可以做保存或者进一步的处理。   4.保存数据   保存形式多样,可以存为文本,也可以保存至数据库,或者保存特定格式的文件,通常保存到数据库,一般大数据公司都是保存在mangodb    三、.Request详解   1.什么是Request   浏览器就发送消息给该网址所在的服务器,这个过程叫做HTTP Request。   2.Request包含哪些内容    1)请求方式:主要有GET、POST两种类型,另外还有HEAD、PUT、DELETE、OPTIONS等。    2)请求URL:URL全称统一资源定位符,如一个网页文档、一张图片、一个视频等都可以用URL唯一来确定。    3)请求头:包含请求时的头部信息,如User-Agent、Host、Cookies等信息。这个很关键,一般请求大型网站,UA和headers这只不对会不能访问,cookies保持会话也非常重要,比如爬去淘宝,登陆淘宝成功后可以使用cookies去获取订单详情等     四、Response详解   1.什么是Response   服务器收到浏览器发送的消息后,能够根据浏览器发送消息的内容,做相应处理,然后把消息回传给浏览器。这个过程叫做HTTP Response。    2.Response包含了那些内容     1)响应状态码:有多种响应状态,如200代表成功、301跳转、404找不到页面、502服务器错误,一般我会以200来判断网站是否访问成功     2)响应头:如内容类型、内容长度、服务器信息、设置Cookie,可能还有token之类的,服务器用以校验请求是否合法等。     3)响应体:最主要的部分,包含了请求资源的内容,如网页HTML、json,图片二进制数据等。      五、.能抓什么样的数据   1.网页文本:如HTML文档、Json格式文本等。   2.图片:获取到的是二进制文件,保存为图片格式。   3.音视频:同为二进制文件,保存为音、视频格式即可   4其他:只要是能请求到的,都能获取。    六、抓到数据怎么解析   1.直接处理,比如返回简单的字符串   2.json解析,比如返回的内容是json串   3.正则表达式,通过正则表达式去匹配提取的内容   4.BeautifulSoup 专业html解析库   5.Pyquery   6.通过xpath提取

转载请注明原文地址: https://www.6miu.com/read-2619843.html

最新回复(0)