From b92fad006352d2830a38e382f0f10219e288cb52 Mon Sep 17 00:00:00 2001 From: Aaron Riedel Date: Tue, 18 Jul 2023 10:06:33 +0200 Subject: [PATCH] add image input --- image.jpg | Bin 0 -> 13420 bytes pingplace.py | 27 ++++++++++----------------- 2 files changed, 10 insertions(+), 17 deletions(-) create mode 100644 image.jpg diff --git a/image.jpg b/image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b14af91c8d49644bb49637d8a1b7f5cb5645c752 GIT binary patch literal 13420 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 literal 0 HcmV?d00001 diff --git a/pingplace.py b/pingplace.py index a353130..ac1d7b4 100644 --- a/pingplace.py +++ b/pingplace.py @@ -1,5 +1,5 @@ from icmplib import * -from time import sleep +from PIL import Image def one_ping(socket, address): request = ICMPRequest( @@ -28,38 +28,31 @@ x=0 y=0 width=512 hight=512 -r=0 -g=0 -b=0 prefix="2a01:4f8:c012:f8e6:1" # open socket sock = ICMPv6Socket() +# open image +with Image.open("image.jpg") as imgraw: + img = imgraw.resize((width, hight)) + # generate IP list ips=[] for w in range(width): - if (r>=255): - if (g>=255): - if(b>=255): - r=0 - g=0 - b=0 - else: - b=b+1 - else: - g=g+1 - else: - r=r+1 for h in range(hight): xcoord=x+w xcoord=f"{xcoord:#05x}".split('x')[-1] ycoord=hex(y+h).split('x')[-1] + r=img.getpixel((x+w, y+h))[0] + g=img.getpixel((x+w, y+h))[1] + b=img.getpixel((x+w, y+h))[2] colorr=f"{r:#04x}".split('x')[-1] colorg=f"{g:#04x}".split('x')[-1] colorb=f"{b:#04x}".split('x')[-1] ip=prefix+xcoord+":"+ycoord+":"+colorr+":"+colorg+colorb ips.append(ip) for ip in ips: - one_ping(sock, ip) + print(ip) +# #one_ping(sock, ip) print("done with %s ips" % len(ips)) \ No newline at end of file