MINI MINI MANI MO
3
\ @ sR d dl Zd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl m
Z
ddddddd d
ddd
dddddddgZdZdZ
dZdZdZdZe jejj dd ejjj D ZdZdZdZejd jZejd!jZd"d#d$hZ d>d&d'Z!G d(d) d)ej"j#Z$e$fd*d+Z%G d,d dej&Z'G d-d dZ(yd dl)Z)W n e*k
rL Y nX G d.d/ d/e(Z+ej,d/ G d0d de-Z.G d1d de.Z/G d2d de.Z0G d3d de.Z1G d4d de.Z2G d5d d e.Z3G d6d
d
e.Z4G d7d de.Z5G d8d
d
e5Z6G d9d de5Z7G d:d de5Z8G d;d de.Z9G d<d de.Z:G d=d de;e9Z<e.Z=dS )? N)urlsplitHTTPResponseHTTPConnection
HTTPExceptionNotConnectedUnknownProtocolUnknownTransferEncodingUnimplementedFileModeIncompleteRead
InvalidURLImproperConnectionStateCannotSendRequestCannotSendHeaderResponseNotReady
BadStatusLineLineTooLongRemoteDisconnectederror responsesP i ZUNKNOWNZIdlezRequest-startedzRequest-sentc C s i | ]}|j |qS )phrase).0vr r #/usr/lib64/python3.6/http/client.py
<dictcomp>k s r i i d s [^:\s][^:\r\n]*s \n(?![ \t])|\r(?![ \t\n])ZPATCHZPOSTZPUTdatac C sf y
| j dS tk
r` } z:t|j|j|j|jd|j | |j|j |f d W Y d d }~X nX d S )Nzlatin-1z`%s (%.20r) is not valid Latin-1. Use %s.encode('utf-8') if you want to send it encoded in UTF-8.)encodeUnicodeEncodeErrorencodingobjectstartendtitle)r nameerrr r r _encode s
r' c @ s e Zd Zdd ZdS )HTTPMessagec C sn |j d }t|}g }d}xL| j D ]@}|d | j |krDd}n|d d j sXd}|r&|j| q&W |S )N:r )lowerlenkeysisspaceappend)selfr% nZlstZhitliner r r getallmatchingheaders s
z!HTTPMessage.getallmatchingheadersN)__name__
__module____qualname__r3 r r r r r( s r( c C s| g }xR| j td }t|tkr(td|j| t|tkrJtdt |d krP qW dj|jd}t j
j|dj|S )
Nr* zheader linezgot more than %d headers
z
iso-8859-1)_class)r7 r8 r9 )
readline_MAXLINEr, r r/ _MAXHEADERSr joindecodeemailparserZParserZparsestr)fpr: headersr2 Zhstringr r r
parse_headers s
rD c s e Zd Zd@ddZdd Zdd Zd d
Zdd Z fd
dZ fddZ dd Z
dd ZdAddZdd Z
dd Zdd Zdd Zdd Zd!d"