创造太阳 发表于 2020-11-19 17:21

打工人苦,有女朋友的打工人更苦!要替女朋友做几百个工作证!没有python真的不行!

本帖最后由 创造太阳 于 2020-11-19 17:28 编辑

我给女朋友发了20000句情话,她暂时不想听情话了!(详见:女朋友抱怨不会说情话,用python给她发了20000句!让她见识见识情话大全!https://www.52pojie.cn/thread-1113388-1-1.html(出处: 吾爱破解论坛))
女朋友最近不找我下五子棋了!(详见:女朋友下棋比我厉害,还特别嚣张,不能忍。拿python敲个辅助,看她如何嚣张!https://www.52pojie.cn/thread-1116867-1-1.html(出处: 吾爱破解论坛))
不过也没怼我,上次的表情包好像白存了,不过还是留着吧,万一派上用场了呢?(详见:为了防止女朋友怼我,我就先用python爬了3600个怼人表情包等她来战!https://www.52pojie.cn/thread-1118801-1-1.html(出处: 吾爱破解论坛))
也不知道你们找到女朋友了没有,找到的话,一起来交流研究!(详见:别再酸了,女朋友是不可能发,但是可以用python帮你创造机会搞到一个!搞到来告诉我!https://www.52pojie.cn/thread-1119202-1-1.html(出处: 吾爱破解论坛))
女朋友存了好多网上的男明星的照片,我准备用python全部换成我的脸!https://www.52pojie.cn/thread-1120431-1-1.html(出处: 吾爱破解论坛)
为了知道女朋友的小秘密,我用python爬了榜姐微博下60000个女生小秘密!https://www.52pojie.cn/thread-1123043-1-1.html(出处: 吾爱破解论坛)
女朋友每晚都给我发诱惑图,我用python搞了更多诱惑图反击她!https://www.52pojie.cn/thread-1128807-1-1.html(出处: 吾爱破解论坛)
女朋友要和我拼手速,不得不用python让她见识我的手速!年轻人,不要试图和你不知...https://www.52pojie.cn/thread-1139015-1-1.html(出处: 吾爱破解论坛)
为了看看女朋友生日那天是什么样子,我用python爬了一年的照片!https://www.52pojie.cn/thread-1144764-1-1.html(出处: 吾爱破解论坛)
女朋友说A罩杯最流行,我用python爬了几十万的购买数据来证明她是在狡辩!https://www.52pojie.cn/thread-1145712-1-1.html(出处: 吾爱破解论坛)
女朋友说因为异性相吸,所以容易产生真爱!我觉得得用python验证一下!https://www.52pojie.cn/thread-1151862-1-1.html(出处: 吾爱破解论坛)
周扬青和罗志祥分手,女朋友说要去周扬青吧看看有没有经验贴,我只好用python快速...https://www.52pojie.cn/thread-1163712-1-1.html(出处: 吾爱破解论坛)
女朋友比较喜欢民宿风格,我就用python爬了一个短租民宿网站,做个合格的男朋友!https://www.52pojie.cn/thread-1171476-1-1.html(出处: 吾爱破解论坛)
为了提高女朋友的计算速度,我用python帮她做了一个出题器,提升一下她的智力水平!https://www.52pojie.cn/thread-1187174-1-1.html(出处: 吾爱破解论坛)
不要998,不要668,不要188,只要10行代码!手把手带你给女朋友写本《吃不胖经》!https://www.52pojie.cn/thread-1235152-1-1.html(出处: 吾爱破解论坛)
女朋友急的叫“爸爸”了,我只好用python帮女朋友迅速完成问卷搜集任务,一小时轻松完成五百份!.https://www.52pojie.cn/thread-1252330-1-1.html(出处: 吾爱破解论坛)
七夕前用python给女朋友抢了萝卜丁,结果她好像并不是很开心!强烈鄙视乱起名的商...https://www.52pojie.cn/thread-1256443-1-1.html(出处: 吾爱破解论坛)
为了找到女朋友当年写的让人读起来会脸红的小说,只好用python把飞卢文学近60000本...https://www.52pojie.cn/thread-1259368-1-1.html(出处: 吾爱破解论坛)
女朋友天天要我来算时间,只好用python整个小玩意让她自己玩吧!https://www.52pojie.cn/thread-1289178-1-1.html(出处: 吾爱破解论坛)
为了让女朋友赶快成为办公室里的老司机,我只好趁着中午吃饭的时候用python研究了...https://www.52pojie.cn/thread-1292125-1-1.html(出处: 吾爱破解论坛)
为了女朋友的安全,用python给她做了个小监控,专门监控老板https://www.52pojie.cn/thread-1293777-1-1.html(出处: 吾爱破解论坛)







上次帮女朋友做了个小程序来帮她快速查找需要的信息,让她半个小时就能完成别人一天的工作,上班变得特别闲,逃过了老板的巡视,但是没逃过旁边领导的眼睛,发现她太闲了,让她帮忙做一批工作证。明明只是会打开-滤镜-磨皮-液化-关闭的人,非要在简历上写过精通PS,这下给自己找到事情了。
本来她打算上网研究一下,用ps建立一个动作,来实现图片合并,但是添加名字、部门什么的貌似比较困难,找了半天也没找到合适的教程!
然后就让我给她讲一下怎么建立这样的动作,给她讲可以通过注释来解决这个问题,她突然想到了一个好办法!
那就是直接转包给我,让我帮她做一下……
PS:奉劝各位打工人,千万不要找女朋友,不然你的工作量要大很多!!!

本打算用PS做一个动作,但是处理起来有些复杂,要将表格信息提取处理,速度也慢,只好用python来解决了。


理清楚逻辑就比较好动手了。
第一步,提取表格中的相关信息;
第二步,打开工作证的底板文件;
第三步,添加相关信息到工作证;
第四部,添加照片到每个工作证;

可以用PIL库来处理图片信息

代码如下:






from PIL import ImageFont
from PIL import Image
from PIL import ImageDraw
import os
import xlrd



def listdir(path, path_name):# 定义传入存储文件的list函数
    for file in os.listdir(path):    #依次获得返回指定的文件夹包含的文件或文件夹的名字的列表
      file_path = os.path.join(path, file)    #将多个路径组合后返回
      if os.path.isdir(file_path):    #返回一个列表,其中包含有指定路径下的目录和文件的名称
            listdir(file_path, path_name)
      else:
            path_name.append(file_path)       #加入到路径列表中


path_name = []
path = r'G:\Python\photos\工作证照片'# 文件夹路径
print(path)

photos = []   #设置空列表用以存储照片路径
listdir(path,path_name)   #获得所有路径
for photo in path_name:
    print(photo)    #文件路径
    photos.append(photo)   #添加到列表中




"""读取工作证信息.xlsx内容"""
# path = g.fileopenbox(msg="选择文件", title="选择工作证信息表格", default='*', filetypes=None)
path = r"工作证信息.xlsx"    #工作证信息的文件路径
data = xlrd.open_workbook(path, encoding_override='utf-8')    #打开文件(文件路径)
table = data.sheets()# 选定表    #第一个工作簿
nrows = table.nrows# 获取行号
ncols = table.ncols# 获取列号
names = []       #建一个空列表以存储名字
departments = []   #建一个空列表以存储部门
positions = []   #建一个空列表以存储职务
for i in range(1, nrows):# 第0行为表头
    alldata = table.row_values(i)# 循环输出excel表中每一行,即所有数据
    name = alldata# 取出表中第一列数据名字   计算机计数是从0开始,电脑的第0个其实是人眼中第1个
    department = alldata# 取出表中第二列数据   部门
    position = alldata    # 取出表中第三列数据   职务
    names.append(name)   #添加到之前建立的空列表中
    departments.append(department)   #同上
    positions.append(position)   #同上
print(names,departments,positions)   #打印



"""工作证上添加文字信息和图片"""
for name,department,position,i,photo in zip(names,departments,positions,range(1,len(names)+1),photos):    #同时依次循环这三个列表和生成序号
    # 打开工作证底版图片
    imageFile = '工作证.png'            #工作证的底图路径
    image=Image.open(imageFile)   #打开图片
    draw = ImageDraw.Draw(image)
    # 在工作证上添加文字
    font = ImageFont.truetype('FZBWKSJW.TTF', 45)# 设置字体为 方正简体   大小为45
    draw.text((320,490),name,(0,0,0),font)    #添加名字位置信息()
    draw.text((300, 585), department, (0, 0, 0), font)# 添加文字位置信息()
    draw.text((320, 675), position, (0, 0, 0), font)# 添加文字位置信息()
    # 在工作证上添加照片
    photo = Image.open(photo)    #打开照片
    image.paste(photo, (210, 133))    #将照片photo添加到工作证上,位置是(210,135)
    dir_name = '工作证完成'# 目录名字
    if not os.path.exists(dir_name):# 判断文件夹是否存在,如果不存在:
      os.mkdir(dir_name)# 创建一个文件夹
    image.save(dir_name + '/' + name + ".png")      #保存处理完成的工作证
    print(name + 'ok')    #打印 处理 name完成
print('处理完成!')    #打印全部完成













女朋友公司的资料不便外传,就随便下载了点素材,让想练手的坛友们们练练手吧!








链接:https://pan.baidu.com/s/1xxEZR-sOgRow00UP11idUA
提取码:kkg4
复制这段内容后打开百度网盘手机App,操作更方便哦



小瑞瑞 发表于 2020-11-20 09:54

我已经看厌了你的这个格式,各种女朋友,各种python,这么麻烦的女朋友不要也罢,这样的python也不是全能,不要神话可好

璐璐诺 发表于 2020-11-19 17:32

所以这个是你吗 头发啊为了女朋友都快没了

Yanderedev 发表于 2020-11-19 17:38

好家伙,楼主女朋友是不是很多,要求也挺多啊。

人二 发表于 2020-11-19 17:36

实在太有用了,之前也遇到过这个问题.

七秒的记忆 发表于 2020-11-19 17:37

哪来的女朋友啊

闷骚小贱男 发表于 2020-11-19 17:38

本帖最后由 闷骚小贱男 于 2020-11-19 17:40 编辑

璐璐诺 发表于 2020-11-19 17:32
所以这个是你吗 头发啊为了女朋友都快没了
这是吴彦祖吧
要是易语言的话,代码字数也差不了多少字。{:1_907:}

ychlzz 发表于 2020-11-19 17:39

哈哈哈哈哈 打工人

夫唯不居 发表于 2020-11-19 17:41

楼主这不光是技术好,文案也好,真牛!{:1_921:}

唯爱卿颜 发表于 2020-11-19 17:42

你不去写小说就是起点的损失~

仰望星空的我 发表于 2020-11-19 17:47

你不去写小说就是起点的损失~更是书虫的损失

页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 打工人苦,有女朋友的打工人更苦!要替女朋友做几百个工作证!没有python真的不行!