首页 » Web前端 » php编程春联技巧_春节在家无聊我用Python设计了一个对联软件

php编程春联技巧_春节在家无聊我用Python设计了一个对联软件

访客 2024-12-08 0

扫一扫用手机浏览

文章目录 [+]

先看效果图

界面设计

php编程春联技巧_春节在家无聊我用Python设计了一个对联软件

首先,程序的界面设计还是利用tkinter来进行设计。
通过tkinter的Entry类来输入我们的上联,然后通过button按钮,来启动程序进行设计。
button键之以是能够完成后续的运行,是由于其绑定了我们的后续的操作函数(也便是代码中的get_xialian函数),通过绑定的函数,实现了爬虫的抓取和对联的保存。

php编程春联技巧_春节在家无聊我用Python设计了一个对联软件
(图片来自网络侵删)

界面设计完成了,而且绑定的函数也已经确定,接下来便是如何利用绑定的函数,来实现我们的后续操作,也便是爬虫抓取和保存。

爬虫助攻

首先对网页的剖析,打开对联设计网页,并进入开拓者模式,可以很轻松的找到我们须要的目标,如下图所示:

查看其要求的url,如下所示:

http://mduilian.388g.com/c.php?in=%E6%98%A5%E9%A3%8E%E9%80%81%E6%9A%96&len=0000&time=Thu%20Jan%2031%202019%2018:23:16%20GMT&timestamp=1548930196082

这个url非常的繁芜,须要我们仔细的进行剖析:

首先我们可以看出url有四个部分须要我们进行输入,然后细细剖析创造,其in是我们输入的上联time和timestamp顾名思义是韶光和韶光戳而len的意义是输入的字数,以0的个数来代替

有同学可能问,这哪里有韶光和输入?分明都是些字母符号。
这是由于这里的韶光和输入都是经由url编码后的格式,我们可以通过urllib中的unquote函数来检讨。
轻微总结一下,上面的url比较卖力,包含了url编码的输入,还有特定编码格式的韶光,还有韶光戳以及让人费解的len。

理解了url的构造组织,我们就可以很轻松的仿照浏览器进行访问,返回我们须要的内容。
但是在后续又涌现了乱码的问题,对付乱码的问题,我们将爬取到的数据采取“utf-8”编码进行办理。
而针对付json库不能解析,我们采取正则表达式的办法,匹配“下联”,并将“下联”返回。

末了将得到的数据保存在根目录下,当对联保存完毕后,程序会弹出对话框,提醒对联已经完成,并到本地进行查看,运行效果如下图所示。

用Python自带的tk作一些小工具结合爬虫,还是非常故意思的!
如果能对下联进行AI处理,比如爬取几千幅对联并模型演习,用自然措辞智能处理就更故意思啦!

标签:

相关文章