python3 七牛鑑黃api調用總結

一、背景

近期在和音視頻組聯調,需要獲取七牛api,獲取url的參數進行解析,進行七牛鑑黃報警。

二、步驟

1.搭建python3 http server
# -*- coding:utf-8 -*-

import flask, json
from flask import request

# 創建一個服務,把當前這個python文件當做一個服務
server = flask.Flask(__name__)
@server.route('/callback', methods=['get', 'post'])
def callback():
    code = "200"

return json.dumps({"code": code}, ensure_ascii=False)
2.若訪問http://your_ip:your_port/callback 返回{“code”: 200} 即說明成功
3.七牛鑑黃,調用釘釘api,發送到釘釘
# -*- coding:utf-8 -*-

import flask, json
from flask import request
import re, requests

webhook = ""
mobile = "" 

# 創建一個服務,把當前這個python文件當做一個服務
server = flask.Flask(__name__)
@server.route('/callback', methods=['get', 'post'])
def callback():
    code = "200"
    if request.method == 'POST':
        params = request.get_json()
        print(params)
        #判斷類型
        if re.findall(str(params['label']), "sexy"):
            params['label'] = "性感"
        elif re.findall(str(params['label']), "porn"):
            params['label'] = "涉黃"
        elif re.findall(str(params['label']), "normal"):
            params['label'] = "正常"
        else:
            params['label'] = "未知"
    
        #判斷是否需要複審
        if re.findall(str(params['review']), "false"):
            params['review'] = "不需要"
        else:
            params['review'] = "需要" 
 
        #替換字典key
        params.update(存儲空間 = params.pop("hub"), 完整流名 = params.pop("streamId"), 房間號 = params.pop("stream"), 準確率 = params.pop("rate"), 人工複審 = params.pop("review"), 時間 = params.pop("time"),類型 = params.pop("label"), 文件 = params.pop("ts"),)

        result = ""
        for key, value in params.items():
            result += str(key) +": "+ str(value) + "\n"
        Robot_Send(result)
    return json.dumps({"code": code}, ensure_ascii=False)

def Robot_Send(message):
    url = webhook
    headers = {
        "Content-Type": "application/json ;charset=utf-8 "
    }
    data = {
        "msgtype": "text",
        "text": {"content": message},
        "at": {
            "atMobiles": [ mobile ],
            "isAtAll": False
        }
    }
    format_data = json.dumps(data, sort_keys=True,indent = 4) #轉爲json
    res = requests.post(url, data=format_data, headers=headers)
    return res

if __name__ == '__main__':
    server.run(debug=True, port=8888, host='0.0.0.0')
4.查看釘釘羣組是否收到消息

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章