MCPcopy Create free account
hub / github.com/cxapython/catvm / deal_pic

Function deal_pic

geetest/recover.py:12–39  ·  view source on GitHub ↗
(img,imgname)

Source from the content-addressed store, hash-verified

10
11
12def deal_pic(img,imgname):
13 captcha = Image.new('RGB', (12, 80))
14 img = Image.open(img)
15 # 将图片裁剪为52份
16 for i in range(52):
17 if i < 26:
18 box = (i * 12, 0, (i + 1) * 12, 80)
19 else:
20 box = ((i - 26) * 12, 80, (i - 25) * 12, 160)
21 regoin = img.crop(box)
22 captcha.paste(regoin, (0, 0))
23 captcha.save(f'{i}.jpg')
24 captcha = Image.new('RGB', (10 * 26, 80 * 2))
25 data = {0: 39, 1: 38, 2: 48, 3: 49, 4: 41, 5: 40, 6: 46, 7: 47, 8: 35, 9: 34, 10: 50, 11: 51, 12: 33, 13: 32,
26 14: 28, 15: 29,
27 16: 27, 17: 26, 18: 36, 19: 37, 20: 31, 21: 30, 22: 44, 23: 45,
28 24: 43, 25: 42, 26: 12, 27: 13, 28: 23, 29: 22, 30: 14, 31: 15, 32: 21, 33: 20, 34: 8, 35: 9, 36: 25,
29 37: 24, 38: 6,
30 39: 7, 40: 3, 41: 2, 42: 0, 43: 1, 44: 11, 45: 10, 46: 4, 47: 5, 48: 19, 49: 18, 50: 16, 51: 17}
31 # 将52份图片重新组合(注意将每张图片的宽度由12裁剪为10)
32 for i, j in data.items():
33 if i < 26:
34 regoin = Image.open(f'{j}.jpg').crop((0, 0, 10, 80))
35 captcha.paste(regoin, (i * 10, 0, (i + 1) * 10, 80))
36 else:
37 regoin = Image.open(f'{j}.jpg').crop((0, 0, 10, 80))
38 captcha.paste(regoin, ((i - 26) * 10, 80, (i - 25) * 10, 160))
39 captcha.save(f'{imgname}.jpg')

Callers 1

recover_picFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected