commit c3e140e7fbd660e298bfd84808bcb371e40f51ca Author: red Date: Mon Nov 6 23:42:41 2023 +0000 initial diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0b53092 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +chat.html +chat.json +bin +include +lib +lib64 +pyvenv.cfg diff --git a/download_chat.py b/download_chat.py new file mode 100644 index 0000000..27c9300 --- /dev/null +++ b/download_chat.py @@ -0,0 +1,55 @@ +import json +from json2html import * +import sys +import requests + + +def get_newest_messages(p): + cookies = { + 'remember_web_59ba36addc2b2f9401580f014c7f58ea4e30989d': sys.argv[2], + 'XSRF-TOKEN': sys.argv[3], + 'sketchers_united_session': sys.argv[4], + } + + headers = { + 'Accept': 'application/json, text/plain, */*', + 'X-Socket-Id': '162774.1133213', + 'X-XSRF-TOKEN': sys.argv[3], + } + + params = { + 'n': '50', + 'p': p + } + + return requests.get(f'https://sketchersunited.org/chats/{sys.argv[1]}/messages', params=params, cookies=cookies, + headers=headers).json() + +if __name__ == "__main__": + if len(sys.argv) != 5: + print("fatal error with wrong usage: python3 chat_number remember_web_cookie xsrf_token sketchers_united_session") + else: + more_messages_to_get = True + all_messages = [] + p = 82779524 + + while more_messages_to_get: + print(f"Getting {p}") + newest_messages = get_newest_messages(p) + if len(newest_messages) == 0 or newest_messages is None: + more_messages_to_get = False + break + else: + p = newest_messages[0]['id'] + all_messages.insert(0, newest_messages) + + with open("chat.json", "w") as file: + json.dump(all_messages, file) + + with open("chat.json", "r") as file: + json_input = json.load(file) + + output = json2html.convert(json=json_input) + + with open("chat.html", "w") as file: + file.write(output) diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..fa9e9ef --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +json2html +requests