标签:ima exception print png 社交网络 相同 notepad 这不 def
中学时看过关于小札的自传电影《社交网络》,边想着有朝一日上了大学搞掉全校女生的学籍照来搭个类似的网站,这不,功夫不负有心人,在大学的尾巴里,从某系统里将全校那啥的那啥搞了下来。
那么有了照片,下一步就是搭站了。
0x00
先谷歌搜了一堆facemash的仿站,搞了一上午都不显示图片,搞得很是郁闷。于是请教滨哥远程给改了一下,,,貌似是数据库和源码的路径没设置好,真是菜鸡。
0x01
既然是给看女同学的站,那么肯定不能有男同学的照片了。那么怎么把男同学的照片删掉呢,这么多照片不可能我人脸识别一个个删吧。
一开始的思路是去github找一些机器学习的项目,去人脸识别筛选,但总感觉有点大材小用咯,所以干脆用了个猥琐的方法。
想起某年省赛时,队友写的ftp上传下载的bat脚本,便搜了一下打开看看,然后便有思路了。
先将历年同学的信息表中男同学筛选出来,然后将他们的学号复制到txt文档内。全部复制完成后,用notepad++的替换功能,选正则表达式
$是替换每行后面的内容
^是替换每行前面的内容
完成后,文本的每一行都是一个dos的删除命令
@echo off changing pic files. Don‘t close it!!!!!! color 0b echo ======================================= changing pic filess. Don‘t close it!!!!!! echo --------------------------------------- echo By 1go0, Tel: 010-XXXXX-XXX. echo ======================================= del 20170xxx0102.jpg del 20170xx10104.jpg del 20170xx10106.jpg del 20170xx10110.jpg del 20170xx10112.jpg
之后,将这个bat脚本复制到图片路径下,双击,就会删除脚本中对应的图片文件,也就删除了男同学的照片。
0x02
那么,在之后的调试过程中,发现有一部分照片的像素大小和其他照片像素不同,大部分图片的像素都是120*160,这种情况当然是用python了!
于是找到atyzy(https://blog.csdn.net/atyzy/article/details/77905463 )师傅的脚本转换之。
#提取目录下所有图片,更改尺寸后保存到另一目录 from PIL import Image import os.path import glob def convertjpg(jpgfile,outdir,width=128,height=128): img=Image.open(jpgfile) try: new_img=img.resize((width,height),Image.BILINEAR) new_img.save(os.path.join(outdir,os.path.basename(jpgfile))) except Exception as e: print(e) for jpgfile in glob.glob("E:\\img\\*.jpg"): convertjpg(jpgfile,"E:\\lianhua")
成功将所有女同学的照片转换到相同的像素。
0x03 Bingo
标签:ima exception print png 社交网络 相同 notepad 这不 def
原文地址:https://www.cnblogs.com/1go0/p/10371548.html