网页flash文本抓取器(爬虫网络爬虫的两种常见类型,get请求的注意点)
优采云 发布时间: 2022-02-28 04:10网页flash文本抓取器(爬虫网络爬虫的两种常见类型,get请求的注意点)
一、了解爬虫
网络爬虫(网络蜘蛛、网络机器人等)利用程序获取网页上的目标数据(图片、视频、文字等)
二、爬行动物的本质
模拟浏览器打开网页,获取浏览器的数据(爬虫想要的数据);
在浏览器中打开网页的过程:当你通过浏览器访问一个链接时,通过DNS服务器找到服务器IP,向服务器发送请求;服务器解析后给出响应(可以是html、js、css等文件内容),浏览器(本质:编译器)解析渲染,显示网页内容;
三、爬虫基本流程
四步基本流程:1.请求目标链接;2. 获取响应内容;3. 解析内容;4. 存储数据;以下是简要说明:
1.请求目标链接
用header、请求参数等信息发起Request,等待服务器响应;
2.获取响应内容
服务器正常响应后,Response的内容收录所有页面内容(可以是HTML、JSON字符串、二进制数据(图片、视频)等)
3.解析内容
获取的内容可以是HTML,可以用正则表达式和页面解析库进行解析;可以是Json字符串,可以直接转换成Json对象进行解析,也可以是二进制数据,可以保存或者进一步处理……
4.存储数据
存储形式多种多样,可以存储为文本,也可以存储在数据库中,也可以存储为特定格式的文件;
四、对Request和Response的简单理解
请求通用请求方式:两种常见的get/port,以及:HEAD/PUT/DELETE/OPTIONS
获取请求的注意事项:例如:
/test/demo_form.asp?name1=value1&name2=value2
网址的简要说明:
【百度】URL是统一资源定位器,是互联网上可用资源的位置和访问方式的简明表示,是互联网上标准资源的地址。
URL的格式由三部分组成:
第一部分是协议(或服务模式);
第二部分是存储资源的主机的IP地址(有时还包括端口号);
第三部分是宿主资源的具体地址,如目录、文件名等;
爬虫爬取数据时,必须有目标URL才能获取数据,是爬虫获取数据的基本依据;
请求头
收录请求过程中的头部信息,如User-Agent、Host、Cookies等信息。下图是请求百度收缩时的所有请求头信息参数;
请求正文
请求中携带的数据,如提交表单数据时的表单数据(POST)
回复
所有 HTTP 响应的第一行是状态行,后跟当前 HTTP 版本号、3 位状态代码和描述状态的短语,以空格分隔。
响应头,响应状态
响应状态有多种,如:200成功,301重定向,404页面未找到,502服务器错误。
响应体
最重要的部分,包括请求资源的内容,如网页HTML、图片、二进制数据等;
爬虫可以抓取哪些类型的数据?
网页文本:如HTML文档、Json格式文本等。
图片:将得到的二进制文件保存为图片格式
视频:也是二进制
其他:只要你要求,你就能得到
如何解析数据?Json 解析的直接处理 正则表达式处理 BeautifulSoup 解析处理 PyQuery 解析处理 XPath 解析 关于抓取到的页面数据与浏览器看到的差异的处理
出现这种情况是因为网站中的很多数据都是通过js和ajax动态加载的,所以直接通过get请求得到的页面和浏览器显示的不一样。
如何解决js渲染的问题?
分析ajax
硒/网络驱动程序
溅
PyV8,幽灵.py
如何保存数据
文本:纯文本、Json、Xml等。
非关系型数据库:MongoDB、Redis等键值存储
关系型数据库:mysql、oracle、sql server等结构化数据库。