大佬深夜怒爬某 Hub 站资源,只为撸这个鉴黄平台!
Python实战社群
Java实战社群
长按识别下方二维码,按需求添加
扫码关注添加客服
进Python社群▲
扫码关注添加客服
进Java社群▲
来源:码匠笔记
黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴黄平台,分享给大家。
# 数据准备
找了 N 多资源都不能解决问题,于是怒爬某 Bub资料,备用准备验证鉴黄效果。
# 账号准备
本文使用的是 UCloud 提供的 UAI-Censor,目前他支持图片,暴恐、涉政会陆续上线。他提供了每日2000张免费调用额度,所以无论对于测试还是小众的工具足够了。
1、使用如下链接注册账号
https://urlify.cn/Bj2Y3y
2、创建 UAI-Censor 应用
获得应用 ID 进行鉴黄 API 调用的时候使用,注册成功以后进入控制台,搜索 UAI,然后点击 AI 内容审核
点击创建应用,输入自定义的应用名称,点击确定
点击确定以后会显示成功的弹框,高亮部分就是你的应用ID,留着备用
3、获取公钥、私钥,应用ID
获取了,但是不能所有人都操作吧?所有需要去注册一个公钥和私钥,这样只有你自己可以使用。点击进入如下链接
https://console.ucloud.cn/uapi/apikey
点击显示即可查看公钥私钥了
到这里就是万事具备只欠东风
4、编码
在编码之前我们可以手工调用一下 API 看下返回结果
如图所示,我们输入公钥、私钥和应用ID以后,点击验证会返回一堆的 JSON其实我们关心的就是 Result 里面的 Porn 的 Suggestion,pass-放行, forbid-封禁, check-人工审核,那么上面这个测试就是 pass 放行了,等下,你居然不相信是吗?这时候某 Hub 的资源就派上用场了,来一张。
实在不忍直视啊,我就打码了,不过看到 forbid了吗
那我们直接编码吧,代码也是非常的简单,其中uaicensorPublicKey 和 uaicensorPrivateKey 是你自己的,这里就不显示了,因为使用的是 SpringBoot 项目,RestTemplate 用起来也是非常简单。
/** * @param imageUrl * @return pass-放行, forbid-封禁, check-人工审核 * @throws Exception */ public String check(String imageUrl) { String ucloudUrl = "http://api.uai.ucloud.cn/v1/image/scan"; String appId = "uaicensor-rjmvogpx"; String uaicensorPublicKey = null; String uaicensorPrivateKey = null; //图片绝对路径 RestTemplate rest = new RestTemplate(); HttpHeaders headers = new HttpHeaders(); /** * 生成signature,首字母排序 */ String timestamp = System.currentTimeMillis() + ""; SortedMap<Object, Object> packageParams = new TreeMap<>(); packageParams.put("PublicKey", uaicensorPublicKey); packageParams.put("ResourceId", appId); packageParams.put("Timestamp", timestamp); packageParams.put("Url", imageUrl); String signature = null; try { signature = UCloudUtil.createSign(packageParams, uaicensorPrivateKey); } catch (Exception e) { return null; } /** * 参数 */ MultiValueMap<String, Object> param = new LinkedMultiValueMap<>(); param.add("Scenes", "porn"); param.add("Method", "url"); param.add("Url", imageUrl); /** * headers 参数 */ headers.setContentType(MediaType.parseMediaType("multipart/form-data; charset=UTF-8")); headers.set("PublicKey", uaicensorPublicKey); headers.set("Signature", signature); headers.set("ResourceId", appId); headers.set("Timestamp", timestamp); HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(param, headers); ResponseEntity<String> responseEntity = rest.exchange(ucloudUrl, HttpMethod.POST, httpEntity, String.class); String body = responseEntity.getBody(); JSONObject jsonObject = JSON.parseObject(body); if (jsonObject.getInteger("RetCode") == 0) { String res = jsonObject.getJSONObject("Result").getJSONObject("Porn").getString("Suggestion"); return res; } return null; }
是不是非常简单?那么开始你的探索之旅吧?
程序员专栏 扫码关注填加客服 长按识别下方二维码进群
近期精彩内容推荐:
955 不加班的公司名单:955.WLB
终于稳了!2020年8月程序员工资最新统计
盘点 Python 10 大常用数据结构(上篇)
理解Java反射的正确姿势
在看点这里好文分享给更多人↓↓
大佬深夜怒爬某 Hub 站资源,只为撸这个鉴黄平台!相关推荐
- 怒爬某破 Hub 站资源,只为撸这个鉴黄平台!
黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴黄平台,分享给大家. 数据准备 找了 N 多资源都不能解决问题,于是怒爬某 Bub资料,备用准备验证鉴黄 ...
- 怒爬某破Hub站资源,只为撸这个鉴黄平台!
黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴黄平台,分享给大家. # 数据准备 找了 N 多资源都不能解决问题,于是怒爬某 Bub资料,备用准备验证 ...
- 怒爬某破Hub站资源,只为撸这个鉴黄平台
黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴黄平台,分享给大家. # 数据准备 找了 N 多资源都不能解决问题,于是怒爬某 Bub资料,备用准备验证 ...
- 学着爬取了某 Hub 资源,只为撸这个鉴黄平台!
点击上方"逆锋起笔",公众号回复 PDF 领取大佬们推荐的学习资料 转自:码匠笔记 黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴 ...
- 写代码爬取了某 Hub 资源,只为撸这个鉴黄平台!
转自:码匠笔记 黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴黄平台,分享给大家. 数据准备 找了 N 多资源都不能解决问题,于是怒爬某 Bub资料, ...
- Web安全侦察工具HTTrack (爬取整站资源)
HTTrack介绍 爬取整站的网页,用于离线浏览,减少与目标系统交互,HTTrack是一个免费的(GPL,自由软件)和易于使用的离线浏览器工具.它允许您从Internet上下载万维网站点到本地目录,递 ...
- Wget/httrack 爬取整站资源
wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP.HTTPS.FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理."wget" 这个名称来源 ...
- python视频网站分类_用Python爬取b站视频
本文概要 爬取B站视频的办法在csdn和B站有很多 但是本文算作是对爬取步骤的一个拆解 同时也算是我的笔记.本代码的参考对象是https://blog.csdn.net/Mr_Ohahah/artic ...
- Python 网络爬虫实战:爬取 B站《全职高手》20万条评论数据
本周我们的目标是:B站(哔哩哔哩弹幕网 https://www.bilibili.com )视频评论数据. 我们都知道,B站有很多号称"镇站之宝"的视频,拥有着数量极其恐怖的评论和 ...
最新文章
- getElementsByName,实现多选的全选与全不选功能
- 想过没有,Spring的Bean为啥默认单例?
- 批量下载ABAP程序和表结构
- 零空间,Markov‘s inequality, Chebyshev Chernoff Bound, Union Bound
- base64_encode() 和 base64_decode() 8bit图片通过网络传输
- 在VS2013以及Linux系统中利用SVN自动更新版本号
- 数据结构之第一章一些概念
- SGU 326 Perspective
- exce小技巧,Mac Excel单元格内换行快捷键
- 使用 tinypng 进行批量压缩
- VSCODE如何汉化成中文
- ClearCase 介绍
- 如何找到QQ互联开发者认证在哪?
- LOTO示波器 实测 开环增益频响曲线/电源环路响应稳定性
- Java实现网页截图技术
- python编码器用什么_用于ceasar-ciph的python构建编码器
- python math库 sqrt eval_假设 math 标准库已导入,那么表达式 eval('math.sqrt(4)') 的值为 _________ 。( ) (2.0分)_学小易找答案...
- 【Vitis Accel】1 - HLS 简介
- 关于开机自启动qbo服务的讨论
- ABAP 关键字(1)
热门文章
- python java是什么意思_Python与Java-你首选哪个?
- openwrt使用apache配置httpd文件服务器
- OA财务“双链”,锻造惠达卫浴数字化韧性
- opencv双目标定+立体校正+立体匹配(源码讲解)
- 抖音短视频开发为什么越来越火热?
- 微信公众号--微信网页授权
- 使用eclipse创建javaweb项目时在jsp页面出现的404servlet找不到的问题
- 请问,你了解推荐系统吗
- quartz配置动态任务,从数据库读取相应的类及方法,执行任务(任务添加、修改、暂停、恢复)
- 赛尔号服务器维护怎么玩,赛尔号新手攻略 七天让你摆脱新手成为高玩