本文已参与「掘力星计划」,赢取创作大礼包,挑战创作激励金
⚡导读
你还在为小小英语而发愁吗?,你还在为备考四六级没有动力而难过吗?那么今天教你写一个背单词软件你不会不想学吧。兄弟们新学期都开始了大家和我一起肥学一起吧!!
演示
爬虫阶段
我在网上找了一个适合我们做软件的网站给大家贴出来链接:网站
我们找到我们要获取的值使用
import requests
from bs4 import BeautifulSoup
两个模块来将我们得到的网页进行处理。最重要的是我们是一个每日单词系列所以我们爬取的时候就要找到他每天数据的一个规律,经过我的对比他们的链接只有后面的course数值会发生变化,所以我们得到如下的代码
import requests
from bs4 import BeautifulSoup
import lxml
url=('http://word.iciba.com/?action=words&class=122&course=%s' %s)
head={
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36',
'Referer': 'http://word.iciba.com/?action=courses&classid=122'
}
res=requests.get(url=url,headers=head).text.encode('utf-8')
soup=BeautifulSoup(res,'lxml',from_encoding='utf-8')
words=soup.find_all('span')
word=[str(w.get_text()) for w in words]
这下我们就能得到每天的数据了。哈哈哈哈
GUI阶段
当然我这里的GUI不是很美观还需要后期的处理,这次我们依然使用的是easygui这个模块我之前也用过再这篇文章:爱情保温软件大家有兴趣可以看看哦。
关于这里的每日单词我们先设置初始窗体
s=a.enterbox(msg="您学习的天数",title='每日单词',strip=True,default='')
这个用来得到您学到了第几天了。
为了激励大家我给大家设定了几句激励
title=['一定要加油下去哦!','水滴石穿!','冲冲冲!','胜利属你你自己!','肥学起来']
b=True
for i in range(9,len(word)-5,2):
if b:
b = a.ccbox(msg=word[i]+word[i+1], title=title[i//10])
else:
exit()
朗读单词阶段
这里依然使用的我们的老朋友
import pyttsx3#朗读模块
用法很简单
pyttsx3.speak(word[i])
直接就朗读了获得的单词
封装阶段
这个之前再文章里面说过了,大家可以参考这篇文章看看哦爱情保温软件大家可以用pyinstaller但是我发现这款虽然说是封装起来很简单但是会出现运行cmd黑框针对这个问题肥学给出解决的方法就是
第一种在后面加-w,至于为什么我上面给出的链接里面有参数介绍
pyinstaller -F XX.py -w
第二种在后面加上--noconsole
pyinstaller.exe -F 路径\文件名.py空格路径\文件名.py空格--noconsole
另外还要强调一点的就是在打包的时候尽量不要出现中文,而且千万把pyinstaller安装到你要打包的文件目录下,或者将你要打包的文件移过去,如果存在说哪一个依赖包不存在或者找不到的情况可以直接重装这个包。
⚡肥学有话说
想要源码或者懒得去动手做的同学可以私信我,。新学习开始了大家在享受大学生活的同时一定不要荒废了学业啊。有什么问题可以私信问肥学,而且我这里也弄了一些不错的专栏大家可以看看一起肥学。