uniapp使用云函数,调用微信敏感词、敏感图片检测接口

7 篇文章 0 订阅
3 篇文章 0 订阅

直接上代码

敏感词比较好弄,敏感图片上传搞了好久。。。

// vue
const checkContent = uniCloud.importObject('check_content')

// 检测敏感词
checkContent.checkText(uni.getStorageSync('access_token'), this.val).then(res => {
	if (res.code === 0) {
		// 没有敏感词
	} else {
		// 有敏感词
	}
})


// 检测敏感图片

uni.chooseImage({
	count: 1, //默认9
	sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
	sourceType: ['album'], //从相册选择
	success: function(res) {
		// 检测图片是否有敏感图片
		try {
			// 图片转换成base64
			const fileManager = wx.getFileSystemManager();
			const base64 = fileManager.readFileSync(res.tempFiles[0].path, 'base64');
			checkContent.checkImg(uni.getStorageSync('access_token'), base64).then(res => {
				console.log(res)
			})
		} catch (err) {
			console.log(err)
		}
	}
});
// 云对象
const FormData = require('form-data'); // 此form-data需要使用npm安装,地址:https://www.npmjs.com/package/form-data

module.exports = {
// 检测是否有敏感词
	checkText: async function(access_token, content) {
		const res = await uniCloud.httpclient.request(
			'https://api.weixin.qq.com/wxa/msg_sec_check?access_token=' + access_token, {
				method: 'POST',
				data: {
					content: content
				},
				contentType: 'json', // 指定以application/json发送data内的数据
				dataType: 'json' // 指定返回值为json格式,自动进行parse
			})

		if (res.status === 200 && res.data.errcode === 0) {
			return {
				code: 0,
				msg: '没有敏感词'
			}
		} else {
			return {
				code: -1,
				msg: '含有敏感词'
			}
		}
	},
	// 检测图片是否有敏感信息
	checkImg: async function(access_token, img) {
		const form = new FormData()
		let bf = Buffer.from(img, 'base64')
		form.append('media', bf, Date.now() + '.jpg')
		const res = await uniCloud.httpclient.request(
			'https://api.weixin.qq.com/wxa/img_sec_check?access_token=' + access_token, {
				method: 'POST',
				content: form.getBuffer(),
				headers: form.getHeaders(), // 请求头
				dataType: 'json' // 指定返回值为json格式,自动进行parse
			})
		if (res.status === 200 && res.data.errcode === 0) {
			return {
				code: 0,
				msg: '没有敏感图片'
			}
		} else {
			return {
				code: -1,
				msg: '含有敏感图片'
			}
		}
	}
}

希望对大家有帮助

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
### 回答1: 可以使用Python内建函数中的字符串替换函数replace()来实现敏感词替换。具体步骤如下: 1. 定义一个敏感词列表,例如:sensitive_words = ['敏感词1', '敏感词2', '敏感词3'] 2. 读取需要替换的文本,例如:text = '这是一段包含敏感词1和敏感词2的文本' 3. 遍历敏感词列表,使用replace()函数敏感词替换为指定的字符,例如:for word in sensitive_words: text = text.replace(word, '*') 4. 输出替换后的文本,例如:print(text) 最终输出的结果为:这是一段包含***和***的文本 ### 回答2: 敏感词替换是一个常见的文本处理操作,可以通过Python内建函数来实现。在Python中,可以使用字符串的replace()函数来替换文本中的指定字符串。 具体实现步骤如下: 1. 定义一个敏感词列表,包含需要替换的敏感词。 2. 使用Python内置函数open()打开需要替换的文本文件。 3. 读取文件内容,并使用replace()函数敏感词替换为指定字符串。 4. 将替换后的内容写入新的文件中。 以下是具体代码实现: ```python # 定义敏感词列表 sensitive_words = ['敏感词1', '敏感词2', '敏感词3'] # 打开文件并替换敏感词 with open('input.txt', 'r', encoding='utf-8') as f1, open('output.txt', 'w', encoding='utf-8') as f2: for line in f1: for word in sensitive_words: line = line.replace(word, '*') f2.write(line) ``` 在上面的代码中,我们首先定义了一个敏感词列表sensitive_words,然后使用with打开需要替换的文本文件input.txt,并使用with打开新的文件output.txt来写入替换后的内容。 接着,我们使用for循环遍历文件中的每一行,在每行中查找敏感词并替换为*,最后将替换后的行写入新的文件中。 最后,我们使用with语句来自动关闭文件,代码实现了敏感词替换的功能。 ### 回答3: Python是一种高级编程语言,其内建函数和库对于处理文本数据非常方便。完成敏感词替换的任务需要用到Python内建函数的字符串方法和条件语句。下面是我对这个任务的介绍。 敏感词替换的主要步骤: 1. 输入文本:首先需要输入需要替换的文本,即包含敏感词的字符串。 2. 准备敏感词:准备需要替换的敏感词列表,包括所有的敏感词。 3. 搜索敏感词:在输入的文本中查找出所有的敏感词。 4. 替换敏感词:将文本中所有的敏感词替换为指定的字符或字符串。 下面是使用Python内建函数实现敏感词替换的示例代码: def censor(text): # 准备需要替换的敏感词列表 sensitive_words = ['敏感词1', '敏感词2', '敏感词3'] # 搜索敏感词并替换 for word in sensitive_words: if word in text: censored_text = text.replace(word, '*'*len(word)) # 返回替换后的文本 return censored_text # 测试代码 print(censor('这里是敏感词1的内容,不能发表。')) print(censor('这里是敏感词2的内容,不能发表。')) print(censor('这里是敏感词3的内容,不能发表。')) 上面的代码中,censor()函数通过遍历敏感词列表,使用字符串方法replace来查找和替换所有的敏感词。对于每一个被替换的敏感词使用*号替换它的每一个字符。最后,函数返回带有替换敏感词的文本。 总之,以上是我对于使用Python内建函数实现敏感词替换的介绍和代码示例。在处理文本数据时,Python的内建函数和库是非常有帮助的,可以让我们以最优的方式处理和分析数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zxyGo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值