Update server.py

This commit is contained in:
Namhyeon Go 2024-02-19 16:07:55 +09:00 committed by GitHub
parent 36842825f5
commit 979147258e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -17,9 +17,11 @@ import re
import hashlib import hashlib
import resource import resource
#import traceback #import traceback
import io
from subprocess import Popen, PIPE from subprocess import Popen, PIPE
from datetime import datetime from datetime import datetime
from platform import python_version from platform import python_version
from PIL import Image
import requests import requests
from decouple import config from decouple import config
@ -179,16 +181,17 @@ def proxy_check_filtered(data, webserver, port, scheme, method, url):
# check an attached images # check an attached images
if truecaptcha_userid != '': if truecaptcha_userid != '':
def download_base64string(url): def webp_to_png_base64(url):
try: try:
response = requests.get(url) response = requests.get(url)
if response.status_code == 200: img = Image.open(io.BytesIO(response.content))
content = response.content img_png = img.convert("RGBA")
return (base64.b64encode(content).decode(client_encoding), len(content)) buffered = io.BytesIO()
else: img_png.save(buffered, format="PNG")
return (None, 0) encoded_image = base64.b64encode(buffered.getvalue()).decode(client_encoding)
return encoded_image
except: except:
return (None, 0) return None
urls = [] urls = []
if not filtered: if not filtered:
@ -197,9 +200,9 @@ def proxy_check_filtered(data, webserver, port, scheme, method, url):
for url in urls: for url in urls:
if not filtered: if not filtered:
print ("[*] downloading... %s" % (url)) print ("[*] downloading... %s" % (url))
base64string, length = download_base64string(url) encoded_image = webp_to_png_base64(url)
print ("[*] downloaded %s bytes." % (length)) print ("[*] downloaded."))
if base64string: if encoded_image:
print ("[*] solving...") print ("[*] solving...")
solved = truecaptcha_solve(base64string) solved = truecaptcha_solve(base64string)
print ("[*] solved: %s" % (solved)) print ("[*] solved: %s" % (solved))