敲敲级简单的鉴别H图片的小程序
时间:2022-05-07
本文章向大家介绍敲敲级简单的鉴别H图片的小程序,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
首先,来看一下程序运行结果的截图
功能实现
一、下载SDK
pip install qcloud_image
先贴出官方给的实例代码:
#!/usr/bin/env python
— coding: utf-8 —
from qcloud_image import Client, CIFile
appid = ‘填入你的 Appid’
secret_id = ‘填入你的 secret_id’
secret_key = ‘填入你的 secret_key’
bucket = ‘填入你的 bucket 名称’
client = Client(appid, secret_id, secret_key, bucket)
client.use_http()
client.set_timeout(30)
print client.tag_detect(CIFile(‘./img/demo.jpg’))
appid这些都是要自己申请的哈。在TX云的管理中心里 登录 - 腾讯云。
二、示例
拿到了官方给的案例,那我们就可以美滋滋的练手啦
# -*- coding: utf-8 -*-
"""
__author__ = 'se7en'
__date__ = '17/5/10 下午5:55'
"""
from qcloud_image import Client, CIFiles
import os
appid = '这里要填自己申请的'
secret_id = '这里要填自己申请的'
secret_key = '这里要填自己申请的'
bucket = '这里写自己创建的空间'
client = Client(appid, secret_id, secret_key, bucket)
client.use_http()
client.set_timeout(30)
def check(func):
def _check(dir):
for filename in os.listdir(dir):
fname = filename
filename = os.path.join(dir, filename)
filename = os.path.normcase(filename)
if os.path.splitext(fname)[-1] == '.jpg': # 判断后缀名
try:
# 这里支持传入多个需要鉴别的本地图片地址
results = client.porn_detect(CIFiles([filename]))
for result in results['result_list']:
func(result, fname, result['data'])
except:
print("不能打开文件 {fname} ".format(fname=fname))
else:
print("{fname} 不是"jpg"文件".format(fname=fname))
return _check
@check
def checkPic(result, filename, data):
if result['message'] == 'success': # 判断是否请求成功
if data['porn_score'] > 50: # 设置多少分为色情图片
print filename + " 图片涉嫌违规"
print "! 图片为色情图片评分:{porn_score}".format(porn_score=data['porn_score'])
print "! 可信度:{confidence}".format(confidence=data['confidence'])
print """
n======n
! 图片 {filename} 可上传
! 性感值:{hot_score}
! 图片为色情图片评分:{porn_score}
! 可信度:{confidence}
n======n
""".format(filename=filename, hot_score=data['hot_score'], porn_score=data['porn_score'],
confidence=data['confidence'])
else:
print result['filename'] + "图片涉嫌违规,已删除"
if __name__ == '__main__':
checkPic('/Users/xxx/Desktop/test') #这里写路径 ,windows的小伙伴要注意路径格式哈。
运行
激动的时刻到啦,我们要将测试图片准备好哟!加上骚骚的颜色!
完美啦!
男生的还没有测。。并不知道能不能检测到。。如果有人成功检测也和我说下哟。
声明:核心功能都是人家写好的接口哟,我就是调用啦~所以这个小程序简单到不能再简单了,正好适合我这样的新手拿来玩玩。我是个新手,所以有哪些代码写的不合理的地方,请提出来,我好改正!最后,请读客老爷们点个赞,么么哒!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
- Laravel框架下载,安装及路由操作图文详解
- PHP实用小技巧之调用录像的方法
- Laravel重定向,a链接跳转,控制器跳转示例
- Laravel 错误提示本地化的实现
- Laravel框架DB facade数据库操作详解
- laravel 解决强制跳转 https的问题
- 在laravel中实现将查询的对象转换为多维数组的函数
- 在Laravel 中实现是否关注的示例
- Laravel框架查询构造器常见用法总结
- laravel 解决多库下的DB::transaction()事务失效问题
- laravel 实现上传图片到本地和前台访问示例
- laravel框架模型中非静态方法也能静态调用的原理分析
- Laravel 5.2 文档 数据库 —— 起步介绍
- laravel csrf排除路由,禁止,关闭指定路由的例子