
昨天分享了一个微信控制电脑的程序,操作还是非常的有趣。没看过的同学可以点击「Python 骚操作,微信远程控制电脑」查看下。今天继续分享一个非常骚气的发朋友圈姿势。效果如下。

利用今天教给大家的 python 脚本,把一张图重新分隔成 9 张。上传到朋友圈,最后就会形成上面的效果。可能有些人在朋友圈有看过类似的消息,也知道某些软件可以做到这样的效果。但如果你自己利用 python 来实现,那种成就感是非常不一样的。
所以今天我就手把手教大家如何利用 python 发一个高逼格的朋友圈。
程序思路
此次程序主要是利用 PIL(Python Image Libraty)这库,来进行图片的处理。
PIL 是一个功能非常强大的 Python 图像处理标准库,但由于 PIL 只支持 Python2.7。如今很多 python 程序员都使用 Python 3.x,所以 PIL 在之前的基础上分离出来一个分支,另外创建一个 Pillow 库,以便支持 Python3.x。本程序在使用之前请确保已经安装了 Pillow 库。
程序首先把你要分隔的图像读取到一个变量中,然后我们定义了一个 fill_image() 方法,用来填充图像让原本大小不一的图像,重新变为一个长宽相同的正方形图像,方便之后处理。
通过 fill_image() 方法,我们就会得到新的一张正方形图像。随后我们在利用 cut_image() 方法,把图像分隔成 9 张,因为微信朋友圈最多发 9 张图片。
最后把这 9 张图片保存到本地文件中,发送到手机,就可以发到朋友圈了。
程序源码
from PIL import Image
import sys
def fill_image(image):
width, height = image.size
new_image_length = width if width > height else height
new_image = Image.new(image.mode, (new_image_length, new_image_length), color='white')
if width > height:
new_image.paste(image, (0, int((new_image_length - height) / 2)))
else:
new_image.paste(image, (int((new_image_length - width) / 2),0))
return new_image
def cut_image(image):
width, height = image.size
item_width = int(width / 3)
box_list = []
for i in range(0,3):
for j in range(0
,3):
box = (j*item_width,i*item_width,(j+1)*item_width,(i+1)*item_width)
box_list.append(box)
image_list = [image.crop(box) for box in box_list]
return image_list
def save_images(image_list):
index = 1
for image in image_list:
image.save(str(index) + '.png', 'PNG')
index += 1
if __name__ == '__main__':
file_path = "4.jpg"
image = Image.open(file_path)
image = fill_image(image)
image_list = cut_image(image)
save_images(image_list)
使用教程
后台回复「朋友圈」获取源码,再把程序中「file_path」变量改成你对应图片的位置,运行程序,就会在原文件下生成 9 张图片。

再配上一句有逼格的话「人必有痴,而后有成」,发到朋友圈逼格满满!
推荐阅读:
Python 骚操作,微信远程控制电脑
用 python 实现自动抽奖
手把手教程 | 搭建超高顔值博客
人必有痴,而后有成
