Source code for utilities.Utilities

import json
import re
from urllib.parse import urlparse

import requests
from sqlalchemy.orm import Query


[docs]def serialize_result_to_list(statement: Query) -> list: """ convert database query result to python list :param statement: SQLAlchemy query :type statement: Query """ converted_list: list = [] for item in statement: converted_list.append({column: str(getattr(item, column)) for column in item.__table__.c.keys()}) return converted_list
[docs]def serialize_response_to_json(url: str, headers=None, proxies=None, cookies=None) -> dict: """ serialize requests response to json format :param url: :type url: str :param headers: :type headers: dict, optional :param proxies: :type proxies: dict, optional :param cookies: :type cookies: dict, optional TODO: add json handler """ response: str = requests.get( url=url, cookies=cookies, headers=headers, proxies=proxies, timeout=10).text try: response_json: dict = json.loads(response) return response_json except Exception as error: print("Serializer fucked up\n", error) return response
#if response_json['status_code'] != 200: # raise Exception(f"Request returned an error: {response_json['status_code']} {response}")
[docs]def parse_username_from_url(url: str) -> str: """ getting usernames from url :params url: :type url: str """ parsed_username = urlparse(url) parsed_username = re.sub('/', '', str(parsed_username.path)) return parsed_username