python微信加人_python模仿微信添加好友截图,一键批量生成微信添加好友聊天截图...
#-*- coding: utf-8 -*-
importtime,random,os,shutilimportPIL.Image as ImageimportPIL.ImageColor as ImageColorimportPIL.ImageDraw as ImageDrawimportPIL.ImageFont as ImageFont#from PIL import Image, ImageDraw
"""整體思路 :先生成時間等字符,然后再把頭像,姓名獲取到,縮小,圓角,合并,保存,移除已經添加過的頭像名字
代碼還沒優化暫時就這樣把 后面有空在搞,
author@:xiaohe
QQ496631085
python3.7"""quanju_path=[]defcircle_corner(img, radii):"""圓角處理
:param img: 源圖象。
:param radii: 半徑,如:30。
:return: 返回一個圓角處理后的圖象。"""
#畫圓(用于分離4個角)
circle = Image.new('L', (radii * 2, radii * 2), 0) #創建一個黑色背景的畫布
draw =ImageDraw.Draw(circle)
draw.ellipse((0, 0, radii* 2, radii * 2), fill=255) #畫白色圓形
#原圖
img = img.convert("RGBA")
w, h=img.size#畫4個角(將整圓分離為4個部分)
alpha = Image.new('L', img.size, 255)
alpha.paste(circle.crop((0, 0, radii, radii)), (0, 0))#左上角
alpha.paste(circle.crop((radii, 0, radii * 2, radii)), (w - radii, 0)) #右上角
alpha.paste(circle.crop((radii, radii, radii * 2, radii * 2)), (w - radii, h - radii)) #右下角
alpha.paste(circle.crop((0, radii, radii, radii * 2)), (0, h - radii)) #左下角
#alpha.show()
img.putalpha(alpha) #白色區域透明可見,黑色區域不可見
returnimgdefruiji_jpgname(path):
all_img_name=os.listdir(path)#for x in range(1,len(all_img_name)):
#取隨機數
x=random.randint(1,len(all_img_name))
name=fenge_houzui(all_img_name[x])#print(all_img_name[x])
#打印文件圖片名稱和后綴
#打印名稱
#print(fenge_houzui(all_img_name[x]))
returnname#對象,位置 字體 字體大小 字體顏色 添加內容
defimgAddFont(im1,gps,font,fontSize,fontColor,data):#在圖片上添加文字 1
draw =ImageDraw.Draw(im1)#設置字體
time_font =ImageFont.truetype(font, fontSize)#(0,0):坐標 "內容":添加的字體 (0,0,255):字體顏色 font:字體大小
draw.text(gps,data,fontColor,font=time_font)
draw=ImageDraw.Draw(im1)defcopy(h,m,z,n,v):#手機當前時間 系統時間
systime = str(h) + ":"+str(m)#小時隨便減去多少
add_h=random.randint(0,1)#分鐘隨便減去多少
add_m=random.randint(2,7)#添加好友的時間
addtime = str(h-add_h) + ":"+str(m-add_m)#標題名稱
#qun_name = "電銷 " + n
qun_name = ruiji_jpgname(".\\img")#打開頭像原圖檢測是否存在不存在就換個后綴
jpg_path = '.\\img\\' +(str(qun_name))if os.path.exists(jpg_path+".jpg"):
img= Image.open(jpg_path+".jpg")else:print(jpg_path)
img= Image.open(jpg_path+".png")#關閉打開文件,移動文件
#Image.close()
quanju_path.append(jpg_path+".jpg")#電池電量
diannum =str(v)#打開圖片
im1=Image.open("new.png")#系統時間 (寬 高)
imgAddFont(im1,(17,20),'C:\Windows\Fonts\msyh.ttc',38,(50,50,50),systime)#電池電量
imgAddFont(im1,(1012,21),'C:\Windows\Fonts\simhei.ttf',29,(50,50,50),diannum)#群姓名
imgAddFont(im1,(120,108),'C:\Windows\Fonts\msyh.ttc',49,(50,50,50),qun_name)#添加時間
imgAddFont(im1,(490,260),'C:\Windows\Fonts\msyh.ttc',38,(170,170,170),addtime)##發消息時間
#imgAddFont(im1,(490,260),'C:\Windows\Fonts\msyh.ttc',38,(170,170,170),addtime)
#保存位置 22 370
#img=im1
#已經添加好完整的文字了,下面添加圖片 打開 縮略 圓角 合并
#縮放等比例的尺寸
w, h =img.size
img.thumbnail((118, 118)) #尺寸等比縮放
img_touxiang = circle_corner(img, radii=10)#打開底圖
layer= Image.new('RGBA', im1.size, (0,0,0,0))
layer.paste(img_touxiang, (20, 370))
out=Image.composite(layer,im1,layer)#out.save("target.png")
save_time=time.strftime('%Y_%m_%d_%M_%H',time.localtime(time.time()))
out.save(".\\end\\"+save_time +str(z)+".png")#out.save("target.png")
def fenge_houzui(file_name,fu='.'):#分割后綴,返回文件名字
z =file_name.split(fu)print(file_name)print(z)if len(z)>2:
z= file_name.split('.jp')returnz[0]#程序入口
h=int(input("請輸入手機幾點"))
m=int(input("請輸入現在幾分"))
v=int(input("請輸入現在電量"))
z=int(input("請輸入需要生成多少張圖片"))#判斷生成多少個圖片
for x in range(1,z+1):if z<2:
n=input("請輸入標題昵稱 例如好友")
copy(h,m,x,n,v)
copy(h,m,x,"__",v)#把已經生成過的就移動到end文件夾里面
for x inrange(0,len(quanju_path)):try:print(quanju_path[x])
shutil.move(quanju_path[x],".\\img_end")exceptException as e:raisee
總結
以上是生活随笔為你收集整理的python微信加人_python模仿微信添加好友截图,一键批量生成微信添加好友聊天截图...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 服务器安全基线检查(Python)代码执
- 下一篇: 私有云的裸金属