관리-도구
편집 파일: url.cpython-38.pyc
U )�em; � @ s� d dl mZ d dlZd dlZddlmZ ddlmZ dZe� d�Z e� d �Ze� d ejej B �ZdZdZd jeed�Zeed�Zdddddddddg ZdZdd�dd� eD �� d Zde d Zd!e d e d" Zd#Ze� d$�Ze� d%e d& �Ze� d%e d& �Ze� d%e d& �Ze� d%edd'� d& �Ze� d(e d) �Z d*eeef Z!e� e!ejej B �Z"e#d+�Z$e#d,�Z%e$e%B d-hB Z&e&d.d/hB Z'e'd0hB Z(Z)G d1d2� d2e�*d2d3ej+e, fd4ej+e, fd5ej+e, fd6ej+e- fd7ej+e, fd8ej+e, fd9ej+e, fg��Z.ej/d:d;d:d<�d=d>��Z0ej/d?d;d?d<�d@d>��Z0dAd;dAd<�dBd>�Z0d:d:dC�dDdE�Z1ej/d?dAd?dF�dGdH��Z2ej/d:dAd:dF�dIdH��Z2dAdAdAdF�dJdH�Z2d:dKdL�dMdN�Z3d:d:dO�dPdQ�Z4d:d2dR�dSdT�Z5dS )U� )�annotationsN� )�LocationParseError� )�to_str)�http�httpsNz%[a-fA-F0-9]{2}z^(?:[a-zA-Z][a-zA-Z0-9+-]*:|/)zS^(?:([a-zA-Z][a-zA-Z0-9+.-]*):)?(?://([^\\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?$z(?:[0-9]{1,3}\.){3}[0-9]{1,3}z[0-9A-Fa-f]{1,4}z(?:{hex}:{hex}|{ipv4}))�hexZipv4)r �ls32z(?:%(hex)s:){6}%(ls32)sz::(?:%(hex)s:){5}%(ls32)sz%(?:%(hex)s)?::(?:%(hex)s:){4}%(ls32)sz2(?:(?:%(hex)s:)?%(hex)s)?::(?:%(hex)s:){3}%(ls32)sz6(?:(?:%(hex)s:){0,2}%(hex)s)?::(?:%(hex)s:){2}%(ls32)sz/(?:(?:%(hex)s:){0,3}%(hex)s)?::%(hex)s:%(ls32)sz'(?:(?:%(hex)s:){0,4}%(hex)s)?::%(ls32)sz&(?:(?:%(hex)s:){0,5}%(hex)s)?::%(hex)sz(?:(?:%(hex)s:){0,6}%(hex)s)?::zCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._\-~z(?:�|c C s g | ]}|t �qS � )�_subs)�.0�xr r �>/opt/hc_python/lib/python3.8/site-packages/urllib3/util/url.py� <listcomp>4 s r �)z (?:%25|%)(?:[z]|%[a-fA-F0-9]{2})+z\[z)?\]z!(?:[^\[\]%:/?#]|%[a-fA-F0-9]{2})*z!^(/[^?#]*)(?:\?([^#]*))?(?:#.*)?$�^�$����(z)\]$z)^(%s|%s|%s)(?::0*?(|0|[1-9][0-9]{0,4}))?$zBABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._-~z!$&'()*+,;=�:�@�/�?c s� e Zd ZdZddddddddd�� fdd� Zedd�d d ��Zedd�dd ��Zedd�dd��Zedd�dd��Z edd�dd��Z dd�dd�Z� ZS )�Urlz� Data structure for representing an HTTP URL. Used as a return value for :func:`parse_url`. Both the scheme and host are normalized as they are both case-insensitive according to RFC 3986. N� str | Nonez int | None��scheme�auth�host�port�path�query�fragmentc s@ |r|� d�sd| }|d k r&|�� }t� �| |||||||�S )Nr )� startswith�lower�super�__new__)�clsr r r r! r"