a
´iG ã @ s d Z dd„ Zdd„ ZdS )z˜Convert a NT pathname to a file URL and vice versa.
This module only exists to provide OS-specific code
for urllib.requests, thus do not use directly.
c C sü ddl }ddl}| dd¡} d| vr\| dd… dkr@| dd… } | d¡}|j d |¡¡S | d¡}t|ƒdks„|d d
|jvr”d| }t |ƒ‚|d d
¡ }|d d¡}|d }|D ]}|r¾|d |j |¡ }q¾| d¡rø| d¡rø|d 7 }|S )
z{OS-specific conversion from a relative URL of the 'file' scheme
to a file system path; not recommended for general use.é Nú:ú|é z////é ú/ú\éÿÿÿÿz Bad URL: é )ÚstringÚurllib.parseÚreplaceÚsplitÚparseÚunquoteÚjoinÚlenÚ
ascii_lettersÚOSErrorÚupperÚendswith)Úurlr
ÚurllibÚ
componentsÚcompÚerrorÚdriveÚpath© r ú"/usr/lib64/python3.9/nturl2path.pyÚurl2pathname s(
r c C s4 ddl }| dd… dkrf| dd… } | dd… ¡ dkrJd| dd… } n| dd… d krftd
| ƒ‚d | vr¢| dd… dkr†d| } | d¡}|j d |¡¡S | jd dd
�}t|ƒdksÌt|d ƒdkrÜd
| }t|ƒ‚|j |d ¡ ¡}|d d¡}d| d }|D ] }|�r|d |j |¡ }�q|S )z{OS-specific conversion from a file system path to a relative URL
of the 'file' scheme; not recommended for general use.r Nr z\\?\zUNC\r r r r z
Bad path: z\\r )Úmaxsplitz///)r r r r
r Úquoter r )Úpr r r r r r r r r Úpathname2url- s.
r# N)Ú__doc__r r# r r r r Ú