1. 进入环境,下载附件
给的是txt文件,一堆数据,如图:
数据范围为0-255之间,且三个数据为一组,那么很容易联想到RGB图片的像素值。
2. 问题分析
我们通过代码创建一幅图,将每一行数据当做像素值写入图片,直接上代码:
import math
from PIL import Image
with open("./62f4ea780ecf4e6bbef5f40d674ec073.txt", 'r') as file:
datas = []
for line in file.readlines():
row = line.rstrip('\n').split(',')
array_row = [int(pix) for pix in row]
# 之所以要转,是因为img.putpixel()方法只接受tuple
datas.append(tuple(array_row))
size = int(math.sqrt(len(datas))) # 最终的构建的画布大小
img = Image.new('RGB', (size, size), '#ffffff')
k = 0
for i in range(size):
for j in range(size):
img.putpixel((i, j), datas[k])
k += 1
img.save("res.png")
执行代码后,效果如图:
用ps找个舒服的角度,瞅瞅:
我叼你丫的,这看着也太难受了,最终的答案为:flag{ youc@n’tseeme }