前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >敲敲级简单的鉴别H图片的小程序

敲敲级简单的鉴别H图片的小程序

作者头像
小歪
发布2018-04-04 14:19:17
7960
发布2018-04-04 14:19:17
举报

首先,来看一下程序运行结果的截图

功能实现

一、下载SDK

代码语言:javascript
复制
pip install qcloud_image

先贴出官方给的实例代码:

代码语言:javascript
复制
#!/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云的管理中心里 登录 - 腾讯云。

二、示例

拿到了官方给的案例,那我们就可以美滋滋的练手啦

代码语言:javascript
复制
# -*- 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的小伙伴要注意路径格式哈。

运行

激动的时刻到啦,我们要将测试图片准备好哟!加上骚骚的颜色!

完美啦!

男生的还没有测。。并不知道能不能检测到。。如果有人成功检测也和我说下哟。

声明:核心功能都是人家写好的接口哟,我就是调用啦~所以这个小程序简单到不能再简单了,正好适合我这样的新手拿来玩玩。我是个新手,所以有哪些代码写的不合理的地方,请提出来,我好改正!最后,请读客老爷们点个赞,么么哒!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-07-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python爬虫与算法进阶 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档