import var from bs4 import BeautifulSoup import requests from beloved_logger import logger async def roll_token(): logger.debug("Rolled a new token set") cookies = { var.cookie_name: var.cookie_value, 'sketchers_united_session': var.session } logger.debug(f"Using cookies {cookies}") headers = { 'User-Agent': 'automod', } get_page_correctly = False response = None while not get_page_correctly: try: response = requests.get(f'https://{var.site}', cookies=cookies, headers=headers) if response.status_code == 200: var.session = response.cookies["sketchers_united_session"] logger.debug(f"Got session of {var.session}") var.xsrf_token = response.cookies["XSRF-TOKEN"] logger.debug(f"Got xsrf of {var.xsrf_token}") get_page_correctly = True else: logger.info("An error occurred trying to get the page when rolling tokens, retrying") except Exception as e: logger.info(f"Exception in rolling token {e}") soup = BeautifulSoup(response.text, 'html.parser') var.csrf_token = soup.find('meta', {'name': 'csrf-token'}).get('content') logger.debug(f"Got csrf of {var.csrf_token}")