怎么能查到四六级成绩,怎么查看自己的四六级成绩
一、需求分析
刷朋友圈的时候看到很多同学的截图都是不规则的(没错,猪哥处女座),有的准考证号还没有打马赛克,于是猪哥就想能不能用Python把自己四级六级的成绩截图,最好自动编码,这样就可以直接发到朋友圈,一步到位的冒充!(别人在展示结果,你不仅可以展示结果,还可以展示Python)
二、功能设计
很多同学会模仿别人的代码,但是不知道怎么做一些小项目。其实问题是:你不知道从哪里开始!
作为一个开发人员,你在工作中总是要满足需求的,所以做自己的项目第一步就是要搞清楚自己要做什么(功能),然后把功能量化,一步步实现!
接下来,我们就来看看今天有什么有趣的事情可以做吧!
检查结果:首先,我们去Xuexin.com通过请求数据库检查结果。
生成截图:查看结果后,直接生成截图。最好只有截图的中奖有效信息部分。
编码:对准考证号进行编码。
相关:《python教程》
三、技术实现
确定要做的功能,量化细分后,就可以开始敲代码实现了。在这里,只要按照前面细分的步骤一步步实现就可以了!
1.查询四六级成绩
首先需要找到四级和六级的查询入口,其中首选Xuexin.com:https://www.chsi.com.cn/cet/index.jsp.
然后我们调出调试窗口,输入准考证号和姓名。记得检查左上角的保存日志。
然后我们可以看到,网络中的第一个请求是获取4级和6级结果的请求。
一旦我们获得了URL,我们就可以开始使用请求库来模拟请求。很简单的post方法!
看看返回的结果。这是一个html页面!
2.使网页生成图片
这里我们会用到一个软件:wkhtmltopdf。注意,这是一个软件,不是python库。我们必须先安装这个软件!
下载地址:https://wkhtmltopdf.org/downloads.html,官方网站。请注意,下载这个网站需要开启VPN,否则下载会超级慢!
朱哥已经提前在百度网盘下载好了:wkhtmltopdf软件下载链接:https://pan.baidu.com/s/11VOomkNch7C9m8lqlRaNAg密码:4xuv
下载后直接安装!
Wos系统的同学需要注意:你需要在PATH变量中加入wkhtmltopdf的bin可执行文件的路径。
Wos系统的同学需要注意:你需要在PATH变量中加入wkhtmltopdf的bin可执行文件的路径。
Wos系统的同学需要注意:你需要在PATH变量中加入wkhtmltopdf的bin可执行文件的路径。
软件下载完成后,我们还需要一个Python库:imgkit。
也许有同学会问:为什么下载完软件还要下载?两者是什么关系?这个库实际上相当于软件包装器。简单理解一下,有了这个库,我们就可以直接用代码调用软件,而不需要像往常一样自己打开使用软件了!
安装库:
Pip install imgkit将html转换成png图片,只需一步!
Imgkit。from _ file (cet.html , cet.png )注意:关于使用img工具包库的更多教程,请参见这里:https://pypi.org/project/imgkit/.
我看看生成的图片是否正常。下图可以看到一个完成的网页截图,生成了!
用这张图发朋友圈,别人可能会叫你sb。剪这么大的图浪费别人的流量!
图太大了,我们试试截掉吧,只留下中间的结果信息!
当然图像处理要用我们经典的枕头库。
安装:
用三行代码安装Pillow cuts图片。在这里,我们将剪切的图片保存为cut_cet.png
#切图片
img=Image.open(cet.png )
cropped=img.crop((310,300,700,700)) #(左、上、右、下)
Cropped.save(cut_cet.png )截图后看效果。这样的图才是合格的Python加载工程师!
3.打码
为什么猪哥要编码的反男功能?原因是猪哥的测试账号也是从朋友圈看到的,所以我警告你:一定要保护好自己的隐私,你永远不知道别人会拿你的数据做什么!
为了拿回代码,兄弟编码准备继续用我们的枕头库,还需要一个公共库,numpy库,会经常一起用。因为一张图片是由很多像素组成的,而每个像素又是由rgb值组成的,所以有可能将一张图片转换成多维数组,所以经常使用numpy库!
编码的原理是修改待编码区域像素的rgb值。
我们来看看编码的技术实现。猪哥把编码代码封装成一个方法,这个方法是通用的,你可以用在其他地方!
这里只需要传递马赛克的大小和需要编码的坐标。来看看最后的效果吧!
上图红色部分是后来猪哥画的。可以看到准考证号已经被猪哥用Python画成了邪恶的马赛克!上面的结果可以这样查吗?Python一步帮你装B!更多详情请关注盛行IT软件开发工作室的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。