我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具。

简介

要实现颜值测试功能,大致有两种方式:一种是自己编写检测功能,另一种是借助第三方接口来实现检测功能,比如:百度云接口,为了方便,本文我们采用百度云接口,接口的注册这里就不说了,如果不太清楚注册流程的话,可以参考一下我之前写的车牌识别这篇文章:https://blog.csdn.net/ityard/article/details/105673451。

我们需要用到的 Python 库主要包括:pillow、baidu-aip、tkinter,安装使用 pip install pillow/baidu-aip/tkinter 即可。

实现

首先,我们来看一下如何利用照片通过百度云接口获取性别、年龄、颜值信息,代码实现如下所示:

APP_ID = '自己的APP_ID'

API_KEY = '自己的API_KEY'

SECRET_KEY = '自己的SECRET_KEY'

face = AipFace(APP_ID, API_KEY, SECRET_KEY)

image_type = 'BASE64'

options = {'face_field': 'age,gender,beauty'}

def get_file_base64(file_path):

with open(file_path, 'rb') as fr:

content = base64.b64encode(fr.read())

return content.decode('utf8')

def get_score(file_path):

# 脸部识别分数

result = face.detect(get_file_base64(file_path), image_type, options)

# print(result)

age = result['result']['face_list'][0]['age']

beauty = result['result']['face_list'][0]['beauty']

gender = result['result']['face_list'][0]['gender']['type']

return age, beauty, gender

这里我们使用 tkinter 创建 GUI 来进行照片选取和接口调用的操作,下面看一下代码的主要实现。

首先,我们创建一个窗口,代码实现如下:

root = tk.Tk()

# 设置窗口大小

root.geometry('700x450')

# 为窗口添加标题

root.title('颜值测试工具')

# 设置背景色

canvas = tk.Canvas(root,

width=700,

height=450,

bg='#EEE8AA')

canvas.pack()

我们接着向窗口中添加两个按钮,一个用来选择照片,另一个用来调用接口,代码实现如下:

# 照片选择按钮

tk.Button(self.root, text='选择照片', font=('华文行楷', 16), command=self.show_img).place(x=40, y=180)

# 颜值测试按钮

tk.Button(self.root, text='查看颜值', font=('华文行楷', 16), command=self.set_score).place(x=40, y=280)

我们还需要创建三个输入框来显示接口返回的性别、年龄和颜值信息,代码实现如下:

tk.Label(self.root, text='性别', bg='#EEE8AA', fg='#0AB0D5', font=('华文行楷', 20)).place(x=500, y=150)

self.text1 = tk.Text(self.root, width=10, height=2)

tk.Label(self.root, text='年龄', bg='#EEE8AA', fg='#0AB0D5', font=('华文行楷', 20)).place(x=500, y=260)

self.text2 = tk.Text(self.root, width=10, height=2)

tk.Label(self.root, text='颜值', bg='#EEE8AA', fg='#0AB0D5', font=('华文行楷', 20)).place(x=500, y=360)

self.text3 = tk.Text(self.root, width=10, height=2)

# 填装文字

self.text1.place(x=580, y=150)

self.text2.place(x=580, y=260)

self.text3.place(x=580, y=360)

看一下实现效果:

源码在下方公号后台回复 200613 获取。

python小测试8_用 Python 写一个颜值测试小工具相关推荐

  1. python测试开发自学教程-Web开发哪家强?看我用 Python 写一个颜值测试小工具

    我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具. 简介 要实现颜值测试功能,大致有两种方式:一种是自己 ...

  2. 利用 Python 写一个颜值测试小工具

    我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具. 很多人学习python,不知道从何学起. 很多人学习 ...

  3. 用 Python 写一个颜值测试小工具

    我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具. 简介 要实现颜值测试功能,大致有两种方式:一种是自己 ...

  4. python测试开发小工具_Web开发哪家强?看我用 Python 写一个颜值测试小工具

    我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具. 简介 要实现颜值测试功能,大致有两种方式:一种是自己 ...

  5. 用 Python 写一个颜值测试小工具!你的颜值有几分了?

    我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具. 简介 要实现颜值测试功能,大致有两种方式:一种是自己 ...

  6. 用 Python 的GUI 库 PySimpleGUI,写一个肥胖指数计算工具,Python开发就是这么简单

    Python 的 GUI 库 PySimpleGUI,写一个简单的有界面的小工具很简单!这里我们来写一个计算肥胖指数(BMI)的小工具.首先,通过百度得到 BMI 指数的计算公式为: 体重 / (身高 ...

  7. vs2010c语言小游戏,用C语言写一个三子棋小游戏(用VS2010实现,加强版)

    前几天写了一个三子棋小游戏,但是比较简单,因为以前写的游戏棋盘只能是3x3那么大.今天对那个程序做了两点改进: 1.现在可以实现在任意大小的棋盘上下棋了. 2.因为棋盘可能变大,为了玩家方便确定坐标, ...

  8. css如何实现一个小三角形,用纯css写一个常见的小三角形

    js小技巧 js判断字符长度 直接使用String对象的属性,空格亦算一个字符 myString = "Hello world"; length = myString.length ...

  9. python文件分发_python 写一个文件分发小程序

    一.概述 该小程序实现从源端到目标端的文件一键拷贝,源端和目标段都在一台电脑上面,只是目录不同而已 二.参数文件说明 1. settings.txt的说明 a. 通过配置settings.txt,填源 ...

最新文章

  1. CodeForces - 1327D Infinite Path(图论综合)
  2. torchtext处理文本数据——使用自己的word2vec模型作为词向量建立词表(学习二)
  3. 单选按钮必填会有红色选中提示吗_视频切割怎么弄?视频剪辑软件可以切割视频吗?...
  4. win10如何提高电脑画质_win10电脑怎么提高画质 | 手游网游页游攻略大全
  5. 【渗透测试】kali使用教程(一):常用命令和基本工具使用
  6. MYSQL的随机函数
  7. Unity3D优化:分场景烘焙,综合场景加载
  8. python 三维数据绘制等高线_python密度与等高线绘制,Python,和,轮廓图,Matplotlib,详解...
  9. PHP给title=赋值变量 PHP title弹出字符串拼接变量
  10. Android避免内存溢出(Out of Memory)方法总结
  11. ubuntu 18.04 卸载firebox
  12. 基于S7-1200 PLC实现PIDNN控制仿真
  13. 树莓派安装配置MFRC522模块
  14. android开发平台的框架原理,赶紧收藏起来
  15. SCI修改稿回答审稿人意见范文模板
  16. JanusGraph服务器
  17. HFM学习系列之五-数据集成工具之对比
  18. 安川5系7系伺服 电路 驱动器原理图
  19. mongorepository查询条件_mongorepository分页条件查询
  20. 爬虫系列之新浪微博爬虫源码weibospider_v2

热门文章

  1. [瞎搞]python调试第三方库
  2. 19. 二元连续型随机变量,联合概率密度
  3. 中国糖尿病残障专用鞋市场深度研究分析报告(2021)
  4. python for循环次数_python的for获取当前循环次数
  5. KiCAD批量修改丝印大小
  6. Win11右键菜单改回Win10的方法分享
  7. css空心圆代码,透明空心或切圆圈
  8. 伯努利分布与二项分布Binomial Distribution
  9. 5.8综合(p100-p102)
  10. 《性能之巅》阅读总结