no need for gifs support + fixed prints to be less verbose

This commit is contained in:
root 2025-02-21 08:56:35 +01:00
parent d81173a488
commit f74f7e33e9
2 changed files with 13 additions and 29 deletions

View file

@ -1,4 +1,5 @@
import re
import os
import requests
from PIL import Image
@ -33,26 +34,6 @@ def CheckUrl(url):
#### PROTECTIONS AGAINST MALICIOUS CSV INPUTS ####
def CheckBannerURL(path: str) -> str:
"""
In: http://participant.onion/participants/participant.onion/banner
serves to know what the real banner type is, between png, jpg, jpeg and .gif
Out: {png,jpg,jpeg,gif,NOBANNER}
"""
bannercounter=0
# TODO: try to reach (using requests) the URL/banner.{png,jpg,jpeg,gif}
# TODO: if any of them succeed,
# TODO: Check if the banner file is valid using IsBannerValid()
#TODO: if valid: return png/jpg/jpeg/gif
#TODO: if invalid REMOVE the file, and keep going (worst case = return NOBANNER at the bottom)
# TODO: if any of them fail, it should be able to continue
# TODO: if one of them fail, it must keep going and just increment bannercounter once
# TODO: if ALL of them fail, it must return NOBANNER
#TODO in lantern.py: handle when it returns png,jpg,jpeg and gif
#TODO in php: handle when it is not png, how to make sure it finds if its jpg,jpeg or gif
#TODO in lantern.py: handle when it returns NOBANNER
def IsBannerValid(path: str) -> bool:
"""
Checks if the banner.png file has the correct dimensions (240x60)
@ -66,8 +47,10 @@ def IsBannerValid(path: str) -> bool:
if width != 240 or height != 60:
print("INVALID BANNER DIMENSIONS, HEIGHT=",height," WIDTH=",width)
return False
# TODO:check the filesize, as you can have a gif that has
# TODO: test it on all 4 filetypes with both correct and incorrect resolutions, and with a gif that has the correct resolutions but is more than 3mb
filesizeMB=os.path.getsize(path)/1024/1024
if filesizeMB > 5:
print("Banner filesize too large (>5Mb): ",os.path.getsize(path)/1024/1024,"MB")
return False
return True