Пример #1
0
def isresource(url, *args, **kwargs):
    url = format.url(url)

    kwargs.setdefault('allow_redirects', True)
    kwargs.setdefault('verify', False)
    r = requests.head(url, *args, **kwargs)

    if 'content-disposition' in r.headers:
        return True

    mime = ''
    content = r.headers.get('content-type')
    if content:
        mime, _, _ = content.rpartition('charset=')
    else:
        from pyload.utils.web import parse

        name = parse.name(url)
        _, ext = os.path.splitext(name)
        if ext:
            mime = parse.mime(name)

    if 'html' not in mime:
        return True

    return False
Пример #2
0
def is_resource(url, *args, **kwargs):
    url = format.url(url)

    kwargs.setdefault("allow_redirects", True)
    kwargs.setdefault("verify", False)
    r = requests.head(url, *args, **kwargs)

    if "content-disposition" in r.headers:
        return True

    mime = ""
    content = r.headers.get("content-type")
    if content:
        mime, _, _ = content.rpartition("charset=")
    else:
        from pyload.utils.web import parse

        name = parse.name(url)
        _, ext = os.path.splitext(name)
        if ext:
            mime = parse.mime(name)

    if "html" not in mime:
        return True

    return False
Пример #3
0
def name(url):
    url = format.url(url)
    up = urllib.parse.urlparse(url)
    name = up.path.split('/')[-1]
    if not name:
        name = up.query.split('=', 1)[::-1][0].split('&', 1)[0]
    if not name:
        name = up.netloc.split('.', 1)[0]
    return name.strip()
Пример #4
0
def name(url):
    url = format.url(url)
    up = urllib.parse.urlparse(url)
    name = up.path.split('/')[-1]
    if not name:
        name = up.query.split('=', 1)[::-1][0].split('&', 1)[0]
    if not name:
        name = up.netloc.split('.', 1)[0]
    return name.strip()
Пример #5
0
def name(url):
    url = format.url(url)
    up = urllib.parse.urlparse(url)
    name = up.path.split("/")[-1]
    if not name:
        name = up.query.split("=", 1)[::-1][0].split("&", 1)[0]
    if not name:
        name = up.netloc.split(".", 1)[0]
    return name.strip()
Пример #6
0
def is_online(url, *args, **kwargs):
    online = True
    url = format.url(url)

    kwargs.setdefault("allow_redirects", True)
    kwargs.setdefault("verify", False)
    try:
        requests.head(url, *args, **kwargs).raise_for_status()
    except requests.TooManyRedirects:
        online = True
    except (requests.ConnectionError, requests.ConnectTimeout):
        online = None
    except requests.RequestException:
        online = False

    return online
Пример #7
0
def isonline(url, *args, **kwargs):
    online = True
    url = format.url(url)

    kwargs.setdefault('allow_redirects', True)
    kwargs.setdefault('verify', False)
    try:
        requests.head(url, *args, **kwargs).raise_for_status()
    except requests.TooManyRedirects:
        online = True
    except (requests.ConnectionError, requests.ConnectTimeout):
        online = None
    except requests.RequestException:
        online = False

    return online
Пример #8
0
def domain(url):
    return tld.get_tld(format.url(url), fail_silently=True)
Пример #9
0
def is_url(url):
    url = format.url(url)
    try:
        return validators.url(url)
    except validators.ValidationFailure:
        return False
Пример #10
0
def domain(url):
    return tld.get_tld(format.url(url), fail_silently=True)
Пример #11
0
def isurl(url):
    url = format.url(url)
    try:
        return validators.url(url)
    except validators.ValidationFailure:
        return False