新年新气象,90行代码菜鸟用Python制作小姐姐新年日历天气卡,送人太有面子啦!

新年新气象,新的一年,我们要给自己的好友送上最好的祝福,送上精心准备的礼物。如果我们能给自己的好友送上自己亲手制作的《小姐姐新年日历天气卡》,不仅体现出了自己的诚意,而且还能让好友获得充满新意的礼物。

0.如何制作

为了让大家对这款新颖的天气卡有直观的印象,我们首先来看一下它的效果吧:
在这里插入图片描述

可以看到,这张天气卡主要是分为四个部分,分别是画面最上方的日期内容显示,偏上方的装饰花、中间部分的中英文名言内容以及最下方的天气内容的展示。画面整体布局非常的合适,而且背景图是美丽的小姐姐,让这张新年天气卡瞬间充满了吸引力。
requests  2.23.0
urilib  1.25.3
gzip python标准库
json  2.0.9
PIL  7.2.0
datetime python标准库

1.图片的处理

对于程序中涉及到的图片内容的操作,都是利用PIL库来进行完成的,例如下图程序:
在这里插入图片描述

上述程序中,我们利用PIL中的Image文件中的open函数来打开背景图片和装饰花图片,然后创建一个和背景图相同大小的ImageDraw对象,该对象用于上面提到的名言和天气信息的叠加。接下来我们来分别看一下日期内容、名人名言以及天气信息是如何获取的吧。

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:810735403

2.日期内容

对于日期内容来说,是最容易获取的,我们只需要利用python的内置标准库datetime就可以来制作日期的内容信息。
在这里插入图片描述

3.名言

对于名言内容的获取,我们通过金山词霸的接口来直接抓取,它会每天进行名言的更新,而且对于接口的请求,不需要设置复杂的反扒措施,直接请求就能获取。
在这里插入图片描述

4.天气信息

对于天气信息的获取,同样是通过json数据接口来进行获取的,但是相比名言爬取,稍微复杂的是,我们不仅需要对json的数据进行提取,而且还要根据json数据中的天气信息在天气卡中展示相应的天气图标。
在这里插入图片描述

上述的程序中,我默认的城市是北京,大家也可以根据自己所在的城市,进行相应的修改。此外,对于天气图标的设置,这里我只是简单的获取了“晴”、“多云转晴”、“小雪”等11种天气的类型。

因此不在这十一种天气中的图标暂时还不能展示。大家也可以不断的补充完善天气类型,让天气图标的显示更加丰富。

5.图片的展示

对于信息获取完毕后,接下来就是对于内容在背景图上的展示了,好的布局才能体现出价值,所以对于图像的各个部分展示需要做出合理的规划。

对于布局规划,大家可以获取源码来详细的查看,这里我们对于日期信息和名言部分的内容做一下简单的程序讲解。
在这里插入图片描述

  • 首先是在ImageDraw对象中画出了三个粉红色矩形框,方便我们后续在三个矩形框中绘制天气信息;
  • 然后分别在ImageDraw对象的(40,50)和(30,300)的位置分别添加了日期信息和名言内容的信息。
  • 对于天气信息的展示,同样也是在ImageDraw对象上进行绘制。将日期、名言和天气信息绘制到ImageDraw对象上后;
  • 最后利用Image.alpha_composite函数将背景图像和ImageDraw对象叠加到一起,形成我们的天气卡。
在这里还是要推荐下我自己建的Python开发交流学习(qq)群:810735403,群里都是学Python开发的,如果你正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2021最新的Python进阶资料和高级开发教程,欢迎进阶中和想深入Python的小伙伴!

**以下内容无用,为本篇博客被搜索引擎抓取使用
(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)
python 是干什么的 零基础学 python 要多久 python 为什么叫爬虫
python 爬虫菜鸟教程 python 爬虫万能代码 python 爬虫怎么挣钱
python 基础教程 网络爬虫 python python 爬虫经典例子
python 爬虫
(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)( ̄︶ ̄)( ̄︶ ̄)
以上内容无用,为本篇博客被搜索引擎抓取使用

猜你喜欢

转载自blog.csdn.net/XIe_0928/article/details/112692444