女神觉得她的签名太丑了!连夜加班给她写了一款设计专属签名软件!居然

文章介绍了一位拥有丰富经验的IT专家分享的Python学习资源,包括零基础教程、进阶课程、实战项目和面试准备,旨在帮助程序员系统提升技能,避免自学中的低效和瓶颈。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
img

正文

看到这个请求的参数,我就知道这是我们的目标,因为它包含了我们需要发送给网站后台的内容。我们再看一下请求预览便知道,这个请求返回的是一个 html 页面:

返回的页面大体是对应着这个网页的内容,但是在艺术签名那里留了个空白,没有显示艺术签名。

我们继续看响应内容,可以观察到那个空白处的html是这样的:

这很显然是一个以时间戳命名的图片。

我们再看看第二个请求,是不是请求的内容和这个图片名称一毛一样呢?

这意思很明显了,网站先返回一个页面,然后再请求一个图片,把图片加载到这个页面。

熟悉这个流程之后,我们签名部分就搞定了,即:

  • 将姓名、字体参数发送请求,获取到一个 HTML;

  • 解析 HTML,找到签名图片名称;

  • 发送获取图片请求,得到签名图片。

签名部分搞定之后,剩下的就是画一个界面,让用户输入姓名、选择字体,然后调用签名接口就行。

​​

实现

请求签名图片

这个网站的请求为 post 请求,一共有四个参数:

word: 姓名

fonts: 字体

sizes: 字体大小

fontcolor: 字体颜色

colors: 签名背景颜色

我感觉这个网站的字体大小、背景颜色、字体颜色都很符合我的口味,所以我就不打算改了。只需要输入名字和字体就行。

核心代码为:

url = ‘http://www.kachayv.cn/’

data = {

‘word’: name,

‘fonts’: mapping_list[font],

‘sizes’: 60,

‘fontcolor’: ‘#ffffff’,

‘colors’: ‘#FD5668’

}

result = requests.post(url, data=data)

result.encoding = ‘utf-8’

html = result.text

print(html)

p = re.compile(‘’)

match = p.findall(html)

urlretrieve(‘http://www.kachayv.cn/cache/’ + match[0], ‘./pic.jpg’)

这里先获取签名图片的网址,然后使用 urlretrieve 方法保存到本地。

设计和实现软件界面

界面内容也比较简单,我们只需要姓名输入框、字体下拉选择框和一个提交按钮就可以了。我们还是使用 tkinter 来简单画界面。

核心代码为:

def draw_window(self):

self.init_window = Tk()

self.init_window.title(“阿花专属签名设计”)

self.init_window.geometry(“800x500”)

self.init_window.geometry(“+400+200”)

姓名

self.name_label = Label(self.init_window, text=‘鼎鼎大名’, font=(‘微软雅黑’, 16), fg=‘black’)

self.name_label.grid(row=0, column=0, columnspan=1)

self.name_entry = Entry(self.init_window, font=(‘宋体’, 16))

self.name_entry.grid(row=0, column=1)

选择字体模式

self.font_label = Label(self.init_window, text=‘字体’, font=(‘微软雅黑’, 16), fg=‘black’)

self.font_label.grid(row=0, column=5, columnspan=1)

self.combox_list = ttk.Combobox(self.init_window, textvariable=StringVar())

self.combox_list.grid(row=0, column=6, sticky=‘W’)

self.combox_list[“value”] = (“行书签”, “超级艺术签”, “潇洒签”, “手写连笔字”, “行草签”, “花式签”, “温柔女生”, “个性签”, “商务签”, “正楷体”, “楷书签”, “情书签”, “卡通可爱签”)

self.combox_list.current(0) # 选择第一个

触发按钮

self.button = Button(self.init_window, text=‘美好来袭’, font=(‘微软雅黑’, 16), command=self.get_sign)

self.button.grid(row=1, column=3, rowspan=2, sticky=‘W’)

图片展示

self.pic_label = Label(self.init_window)

self.pic_label.grid(row=3, column=1, rowspan=10, columnspan=5, sticky=‘NW’)

这里面有一个麻烦的地方,就是网站的字体是类似于“19.ttf”这样子的,我肯定不能把这个显示在界面上,而 tkinter 的下拉选择框比较傻瓜,不能以 key-value 的形式传值。

没办法,不能在一棵树上吊死,我只能在中间加一个转换:在界面上显示人类看得懂的中文,获取到这个中文字体名之后,再跟网站需要的火星文做个映射。

界面运行之后,是这样子的:

最后

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

👉Python所有方向的学习路线👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

👉Python必备开发工具👈

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

👉实战案例👈

学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。

因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
mg_convert/99461e47e58e503d2bc1dc6f4668534a.png)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
[外链图片转存中…(img-jQjXZyDa-1713549348204)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值