forked from GanerCodes/videoEditBot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
imageCorrupt.py
61 lines (51 loc) · 1.6 KB
/
imageCorrupt.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import os, subprocess, sys, requests
from pathHelper import *
from PIL import Image
from random import randrange as r
# def breakImage(file):
# t = os.path.splitext(file)
# if t[1] == ".png":
# im = Image.open(file)
# rgb = im.convert('RGB')
# rgb.save(t[0]+".jpg")
# os.remove(file)
# os.rename(t[0]+".jpg", file)
# with open(file, "rb") as binaryFile:
# b = bytearray(binaryFile.read())
# n = max(int(len(b) / 8500), 15)
# n2 = int(r(1, 3))
# for i in range(n):
# t = int(r(600, len(b) - 200))
# for o in range(n2):
# b[t + o] = int(r(0, 256))
# new = open(file, 'wb')
# new.write(b)
def ruin(file, fac):
i = Image.open(file)
pat = getDir(file)
i = i.convert('RGB')
w, h = i.size
z = int((w + h) / int(fac))
i = i.resize((max(1, z), max(1, z)), Image.NEAREST)
nn = f"{pat}/_{getName(file)}.jpg"
i.save(nn, "JPEG", quality = 2)
i = Image.open(nn)
i = i.resize((max(1, w), max(1, h)), Image.NEAREST)
nn2 = f"{pat}/_{getName(nn)}.jpg"
i.save(nn2, "png")
os.remove(nn);
os.remove(file)
os.rename(nn2, os.path.splitext(file)[0]+".png")
def imageCorrupt(filename, destroyAmount):
ruin(filename, destroyAmount)
return [0]
if __name__ == "__main__":
if len(sys.argv) < 4:
filename = sys.argv[2]
destroyAmount = sys.argv[1]
ruin(filename, destroyAmount)
else:
url = sys.argv[1];
req = requests.get(url, allow_redirects=True)
open(sys.argv[2], 'wb').write(req.content)
ruin(sys.argv[2], sys.argv[3])