爬虫识别-爬虫写入 Redis-效果及总结| 学习笔记

简介: 快速学习爬虫识别-爬虫写入 Redis-效果及总结

开发者学堂课程【大数据实战项目 - 反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第六阶段爬虫识别-爬虫写入 Redis-效果及总结】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/674/detail/11729


爬虫识别-爬虫写入 Redis-效果及总结

内容介绍:

一、展示

二、总结

 

一、展示

已经将识别出的黑名单数据写入到 Redis 中。此时,查看实际效果。首先需要将数据域代码运行。运行之后,找到爬虫右键进行执行。接下来将爬虫识别运行,识别时,也会将数据写入到 Redis 中。看到分数之后,证明爬虫已经运行成功。

image.png

没有报错,也将数据写入到 Redis 中。刷新之后,结果如下:

image.png

BLACK 为前置的数据就是拼接出的黑名单,数据IP就是黑名单。数据出现,说明识别出的爬虫已经写入到Redis中。之后的时间、命名规则、名称等也存在于其中。此时证明爬虫识别写入到Redis中已经成功。将代码停止运行回到数据处理流程中:

image.png

在整个流程中,爬虫识别、读取数据和规则以及判断已经进行,判断完成之后,第六步,将数据写入到Redis也完成。第七步,是前端工程师需要做的事情。只需要将爬虫识别,识别出之后将其写入到Redis中,按照规则写入,前端工程师按照规则读取出Redis,直接到前端进行屏蔽即可。在LUA脚本中也写了读取Redis数据的脚本,读取完成之后做输出。这个工作由前端工程师完成。以上就是爬虫识别,写到Redis的过程。

 

二、总结

将数据写到Redis中,第一步就是遍历数据中的Rdd,将其进行序列化。代码如下:

blackDatas . foreachRDD(rdd=>{

val plackDatas: Array[ (String, Array[ FlowScoreResult])] = rdd.collect( )

}

第二步,遍历后的每一个数据获取出数据的IPFLOW score。代码如下:

for(blackData< -blackDatas){

//获取数据中的IP

val ip=blackData._ 1

//获取数据中的fLowsScore

val flowsScores: Array[FlowScoreResult]=blackData. 2

}

第三步,准备写入RedisKey。代码如下:

Val

key=PropertiesUtil. getStringByKey(

"cluster .key. anti_ black_ list" ,

"jedisConfig. Properties")

+"I"+

Ip

+"I"+

flowsScore. flowId

+"I"+

System. curr entTimeMillis() . toString

}

第四步,准备写入RedisTime,代码如下:

va1 time

=PropertiesUtil. getStr ingByKey(

" cluster . exptimeanti_ black. _list"

,"jedisConfig. properties"

). toInt

第五步,准备写入Redisvalue,代码如下:

val value=flowsScore. flowScore+"+flowsScore. hitRules+" "+flowsScore. hitTime

最后写入Redis数据,代码如下:

jedis. setex(key, time,value)

以上是将识别到的爬虫数据写入Redis,被剔除爬虫准备数据的过程。

相关文章
|
2月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
504 5
|
9月前
|
数据采集 存储 数据可视化
分布式爬虫框架Scrapy-Redis实战指南
本文介绍如何使用Scrapy-Redis构建分布式爬虫系统,采集携程平台上热门城市的酒店价格与评价信息。通过代理IP、Cookie和User-Agent设置规避反爬策略,实现高效数据抓取。结合价格动态趋势分析,助力酒店业优化市场策略、提升服务质量。技术架构涵盖Scrapy-Redis核心调度、代理中间件及数据解析存储,提供完整的技术路线图与代码示例。
963 0
分布式爬虫框架Scrapy-Redis实战指南
|
7月前
|
数据采集 存储 NoSQL
分布式爬虫去重:Python + Redis实现高效URL去重
分布式爬虫去重:Python + Redis实现高效URL去重
|
存储 NoSQL Redis
Redis系列学习文章分享---第十六篇(Redis原理1篇--Redis数据结构-动态字符串,insert,Dict,ZipList,QuickList,SkipList,RedisObject)
Redis系列学习文章分享---第十六篇(Redis原理1篇--Redis数据结构-动态字符串,insert,Dict,ZipList,QuickList,SkipList,RedisObject)
190 1
|
NoSQL Java Redis
Redis系列学习文章分享---第十八篇(Redis原理篇--网络模型,通讯协议,内存回收)
Redis系列学习文章分享---第十八篇(Redis原理篇--网络模型,通讯协议,内存回收)
708 0
|
存储 消息中间件 缓存
Redis系列学习文章分享---第十七篇(Redis原理篇--数据结构,网络模型)
Redis系列学习文章分享---第十七篇(Redis原理篇--数据结构,网络模型)
210 0
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
1794 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
存储 JSON NoSQL
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
这篇文章是关于Redis基本数据结构的学习笔记,包括了String、Hash、Set、List和SortedSet的介绍和常用命令。文章解释了每种数据结构的特点和使用场景,并通过命令示例演示了如何在Redis中操作这些数据结构。此外,还提供了一些练习示例,帮助读者更好地理解和应用这些数据结构。
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
1427 3
|
存储 Prometheus NoSQL
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
216 3