예제 #1
0
import datetime
import json
import logging
from urllib.parse import urlparse

import aiohttp
import asyncpg
import validators.url

from app.config import Config

config = Config.from_file()
log = logging.getLogger(__name__)


async def redirect_gatherer(url: str, session: aiohttp.client.ClientSession):
    async with session.get(url) as resp:
        history = [str(x.url) for x in resp.history]
        history.append(str(resp.url))
        return history


async def validate_url(url: str):
    a = validators.url(url)
    if not isinstance(a, validators.ValidationFailure):
        return True
    return False


async def url_splitter(url: str):
    return urlparse(url)