From b9300a8791e0948ce3e634149823842c85f2832f Mon Sep 17 00:00:00 2001 From: Pablo Ferreiro Date: Fri, 11 Mar 2022 19:28:12 +0100 Subject: [PATCH] Patch for heroku --- TikTokSigner/Signer.py | 5 ++++- web.py | 31 ++++++++++++++++--------------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/TikTokSigner/Signer.py b/TikTokSigner/Signer.py index a2f8c65..f898ebe 100644 --- a/TikTokSigner/Signer.py +++ b/TikTokSigner/Signer.py @@ -16,10 +16,13 @@ class Signer: def __init__(self): options = Options() - path = getenv('GOOGLE_CHROME_BIN', '') + path = getenv('GOOGLE_CHROME_SHIM', '') options._binary_location = path options.add_argument("start-maximized") options.add_argument("--headless") + options.add_argument("--disable-gpu") + options.add_argument("--no-sandbox") + options.add_argument("--remote-debugging-port=9222") options.add_experimental_option("excludeSwitches", ["enable-automation"]) options.add_experimental_option('useAutomationExtension', False) options.add_argument('--disable-blink-features=AutomationControlled') diff --git a/web.py b/web.py index 87ada31..c31d2aa 100644 --- a/web.py +++ b/web.py @@ -7,25 +7,26 @@ signer = Signer() class TikServer(BaseHTTPRequestHandler): def do_POST(self): - content_length = int(self.headers['Content-Length']) - post_data = self.rfile.read(content_length) - url = post_data.decode() + if self.path == '/signature': + content_length = int(self.headers['Content-Length']) + post_data = self.rfile.read(content_length) + url = post_data.decode() - data = signer.sign(url) - nav = signer.navigator() + data = signer.sign(url) + nav = signer.navigator() - res = { - 'status': 'ok', - 'data': { - **data, - 'navigator': nav + res = { + 'status': 'ok', + 'data': { + **data, + 'navigator': nav + } } - } - self.send_response(200) - self.send_header('Content-type', 'application/json') - self.end_headers() - self.wfile.write(json.dumps(res).encode()) + self.send_response(200) + self.send_header('Content-type', 'application/json') + self.end_headers() + self.wfile.write(json.dumps(res).encode()) if __name__ == '__main__': PORT = getenv('PORT', 8080)