HTTP 请求
我们通过浏览器访问网页的原理:
- 浏览器向服务器发送请求。
- 服务器向浏览器发送响应。
- 更多: [[HTTP协议]]
影刀 RPA 抓取:
- 优点:效果直观,定位方便。缺点:数据抓取慢,有时数据抓取不到。
HTTP 服务器响应抓取:
- 优点:数据全面,处理速度快。缺点:数据不直观,需要查找。
影刀 HTTP 下载
「HTTP 下载」指令的流程:接收 HTTP 响应后,获取 HTTP 地址,根据地址下载图片。
下载单张图片
通过「Http 下载」 指令,将图片下载到桌面,返回「保存路径+文件名」。
批量下载图片
使用「获取相似元素列表」得到网页的所有图片,「foreach列表循环」得到每张图片的地址,「http下载」所有图片。
另:如果要从缩略图中提取原图,使用正则提取地址中的原图 url。
影刀 HTTP 请求
「HTTP 请求」指令的流程:主动(代替浏览器)发送请求,获取http响应内容,从中获取对应的数据。
通过开发者工具查找响应文件
除了下载图片,还可以使用「HTTP请求」下载网站其他数据。
影刀「HTTP请求」指令的原理,就是代替浏览器向服务器发送HTTP请求,服务器同样会给出HTTP响应。可以避开网页操作获取网站(服务器)的内容。
一个「HTTP请求」指令,发送一条http请求。
F12 开发者工具——刷新——网络(network)——搜索页面关键字「1632」,找到服务器响应的数据在哪个文件(不要搜索中文,可能搜不出来),此处在 01.json
。
请求URL为: https://baike.baidu.com/cms/home/eventsOnHistory/01.json?_=1706086797804
。
获取HTTP请求
影刀「Http请求」指令:
在需要响应文件上右键——复制——复制为cURL(bash)(copy as cURL(bash))。
将复制的内容拿到「http请求」智能识别填入即可:
获取的http请求包括 4 部分:状态码、内容类型、内容编码、响应内容。
查看 json 数据
第一 层:01月;
第二层:01月01日;
第三层:第0个项目。
在影刀「转换为Json对象」,再从 Json 对象中提取出单个大事件。
获取 json 中的一项
将数据写入 excel
网页监听
网页监听相比http请求的优势:
- (1) 监听不需要发送HTTP请求,能规避输入协议头、协议体等信息
- (2) 降低服务器监测风险
- (3) 在网页操作的过程中,可灵活监听多个请求