Python写表情包搜索工具(非常详细)零基础入门到精通,收藏这一篇就够了

首先,我们导入了一些必要的库。requests库用于发送HTTP请求,json库用于处理JSON数据,tkinter库用于创建GUI界面,PIL库用于处理图像,io库用于在内存中读写数据。

然后,我们定义了一个常量ITEMS_PER_PAGE,表示每页显示的图片和链接数量。

接下来,我们定义了一个名为search_emoji的函数。这个函数用于执行表情包搜索操作。它接受一个可选的page参数,默认为1,表示要搜索的页码。

在函数内部,我们首先从搜索框中获取用户输入的关键字。如果没有输入关键字,则弹出一个提示框,并返回。

然后,我们根据关键字和页码构建了一个API请求的URL。这个URL包含了关键字和页码作为参数,以便向API发送请求获取数据。

接下来,我们使用requests库发送了一个GET请求,并将返回的数据解析为JSON格式。

然后,我们清空了显示结果的文本框内容,以便显示新的搜索结果。

如果返回的数据是一个列表,说明找到了相关的表情包。我们计算出总共的表情包数量和页数,并更新页码的显示。然后,根据当前页码计算出要显示的表情包的起始和结束索引。

接下来,我们遍历这些表情包,获取每个表情包的缩略图URL和来源链接。

然后,我们尝试从用户输入的宽度和高度文本框中获取宽度和高度的值。如果用户没有输入有效的值,我们将宽度和高度设置为默认值150。

接下来,我们使用requests库发送了一个GET请求,获取表情包的缩略图。然后,我们使用PIL库打开并调整表情包的大小。接着,我们将调整后的表情包转换为ImageTk.PhotoImage对象,并将其显示在GUI界面上的一个Label组件中。

同时,我们将表情包的链接和来源链接插入到结果文本框中,以便用户可以查看和复制。

如果返回的数据不是列表,说明未找到相关的表情包。我们向结果文本框中插入一条提示,告诉用户未找到相关表情包。

除了搜索函数,我们还定义了其他几个函数来处理用户在界面上的操作。

go_to_page函数在用户点击“Go”按钮时调用,用于跳转到指定的页码。它从页码文本框中获取用户输入的页码,并调用search_emoji函数进行搜索。

go_to_first_page函数在用户点击“首页”按钮时调用,用于跳转到第一页。它直接调用search_emoji函数进行搜索第一页。

go_to_last_page函数在用户点击“尾页”按钮时调用,用于跳转到最后一页。它首先发送一个请求获取所有表情包的数据,然后根据总页数调用search_emoji函数进行搜索最后一页。

go_to_prev_page函数在用户点击“上一页”按钮时调用,用于跳转到上一页。它从页码文本框中获取当前页码,并调用search_emoji函数进行搜索前一页。

go_to_next_page函数在用户点击“下一页”按钮时调用,用于跳转到下一页。它从页码文本框中获取当前页码,并发送一个请求获取所有表情包的数据,然后根据总页数调用search_emoji函数进行搜索下一页。

最后,在主程序中,我们创建了一个Tk类的实例,设置窗口的标题和尺寸,并配置了背景颜色。

然后,我们创建了各个GUI组件,并使用grid方法将它们放置在窗口中的适当位置。

最后,我们进入了主事件循环,等待用户与界面进行交互。在这个循环中,程序会根据用户的操作来调用相应的函数,更新界面的显示。

运行效果:

题外话

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

在这里插入图片描述

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

在这里插入图片描述

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,领取方法如下👇

在这里插入图片描述

3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

在这里插入图片描述

因篇幅有限,仅展示部分资料,领取方法如下👇

在这里插入图片描述

4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,领取方法如下👇

在这里插入图片描述

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

在这里插入图片描述

因篇幅有限,仅展示部分资料,领取方法如下👇

在这里插入图片描述

  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值