1>借助一个pillow库
pip3 install pillow
2>解析
img = Image.new('RGB', (236, 36), (0, 0, 0)) # 生成图片对象,大小236X36,三原色 000为黑色,每个色取值范围0~255,
所以,可以写个随机数值,让它随机生成颜色
draw = ImageDraw.Draw(img) # 类似利用这个图片对象生成一个“画板”,就可以在上面书写内容了 font = ImageFont.truetype('static/font/youyuan.TTF', size=30) # 设置字体颜色,大小等属性,第一个参数是一个ttf字体 文件,可以从网上下载需要的字体,size指定字体大小。(这个参数会作为text的font关键字参数传入,非必须参数,因为他们都有 默认值, 是否需要设置视情况而定)
draw.text((i*45+15, 4), random_char,font=font) # 在那个“画板”上写东西,第一个参数是位置,这里基于i变量变化,否则
写入的内容会在同一个位置,叠到一起,第二个参数就是写入的实际内容,这里就是刚刚生成的随机字符,font关键字传递
刚刚设置的字体属性,字体类型和大小等。
draw.line() 和 draw.ponit()等方法就是画线和点,这里加入随机位置参数,生成随机线和点,干扰项---增加机器识别难度。 f=BytesIO() # 生成类似一个内存句柄 img.save(f, 'png') # 于该句柄保存刚才生成的图片 data = f.getvalue() # 取数据的方法