Add metadata to screenshots
This commit is contained in:
parent
d06426e22f
commit
a96a68517b
|
@ -6,6 +6,7 @@ import os
|
||||||
import sys
|
import sys
|
||||||
import pytesseract
|
import pytesseract
|
||||||
import uuid
|
import uuid
|
||||||
|
import json
|
||||||
from pytesseract import Output
|
from pytesseract import Output
|
||||||
from PIL import Image, ImageDraw, ImageFont
|
from PIL import Image, ImageDraw, ImageFont
|
||||||
|
|
||||||
|
@ -14,7 +15,8 @@ output_file_relative = sys.argv[
|
||||||
] # this is also the existing source screenshot to annotate. It will be updated in-place
|
] # this is also the existing source screenshot to annotate. It will be updated in-place
|
||||||
|
|
||||||
output_file = "/opt/static/" + output_file_relative
|
output_file = "/opt/static/" + output_file_relative
|
||||||
needles = sys.argv[2:]
|
domain = sys.argv[2]
|
||||||
|
needles = sys.argv[3:]
|
||||||
|
|
||||||
base_url = os.getenv("BASE_URL")
|
base_url = os.getenv("BASE_URL")
|
||||||
|
|
||||||
|
@ -36,8 +38,8 @@ with Image.open(output_file) as im:
|
||||||
os.remove(cropped_filename)
|
os.remove(cropped_filename)
|
||||||
draw = ImageDraw.Draw(im)
|
draw = ImageDraw.Draw(im)
|
||||||
n_boxes = len(d["level"])
|
n_boxes = len(d["level"])
|
||||||
print(needles)
|
|
||||||
font = ImageFont.truetype("/usr/share/fonts/noto/NotoSansDisplay-Medium.ttf", 48)
|
font = ImageFont.truetype("/usr/share/fonts/noto/NotoSansDisplay-Medium.ttf", 48)
|
||||||
|
found_needles = []
|
||||||
for i in range(n_boxes):
|
for i in range(n_boxes):
|
||||||
(x, y, w, h, text) = (
|
(x, y, w, h, text) = (
|
||||||
d["left"][i],
|
d["left"][i],
|
||||||
|
@ -48,7 +50,7 @@ with Image.open(output_file) as im:
|
||||||
)
|
)
|
||||||
for [needle, comment] in partition(needles, 2):
|
for [needle, comment] in partition(needles, 2):
|
||||||
if needle.lower() in text.lower():
|
if needle.lower() in text.lower():
|
||||||
print("needle", needle, text, x, y)
|
found_needles.append(needle)
|
||||||
# modify y so it's aligned not with the top of the text, but with the midline
|
# modify y so it's aligned not with the top of the text, but with the midline
|
||||||
y = y + h / 2
|
y = y + h / 2
|
||||||
radius = 30
|
radius = 30
|
||||||
|
@ -78,4 +80,7 @@ with Image.open(output_file) as im:
|
||||||
font=font,
|
font=font,
|
||||||
)
|
)
|
||||||
im.save(output_file, "PNG")
|
im.save(output_file, "PNG")
|
||||||
print('{"new_file": "' + base_url + "/static/" + output_file_relative + "\"}")
|
print(json.dumps({"new_file":
|
||||||
|
{"url": base_url + "/static/" + output_file_relative,
|
||||||
|
"domain": domain,
|
||||||
|
"found_headers": found_needles}}))
|
||||||
|
|
|
@ -53,7 +53,7 @@ while IFS= read -r DOMAIN; do
|
||||||
filename="$ID/${index}.png"
|
filename="$ID/${index}.png"
|
||||||
scrot "/opt/static/$filename"
|
scrot "/opt/static/$filename"
|
||||||
grab "searching $DOMAIN"
|
grab "searching $DOMAIN"
|
||||||
BASE_URL="$BASE_URL" python annotate_header.py "$filename" \
|
BASE_URL="$BASE_URL" python annotate_header.py "$filename" "$DOMAIN" \
|
||||||
"set-cookie" "identyfikator internetowy z cookie" \
|
"set-cookie" "identyfikator internetowy z cookie" \
|
||||||
"Cookie" "identyfikator internetowy z cookie" \
|
"Cookie" "identyfikator internetowy z cookie" \
|
||||||
"Referer" "Część mojej historii przeglądania" &
|
"Referer" "Część mojej historii przeglądania" &
|
||||||
|
|
Loading…
Reference in New Issue
Block a user