@@ -7,7 +7,7 @@ from http.client import HTTPConnection, HTTPMessage, HTTPResponse
7
7
from http .cookiejar import CookieJar
8
8
from re import Pattern
9
9
from typing import IO , Any , ClassVar , NoReturn , Protocol , TypeVar , overload
10
- from typing_extensions import TypeAlias
10
+ from typing_extensions import TypeAlias , deprecated
11
11
from urllib .error import HTTPError as HTTPError
12
12
from urllib .response import addclosehook , addinfourl
13
13
@@ -43,10 +43,10 @@ __all__ = [
43
43
"getproxies" ,
44
44
"urlretrieve" ,
45
45
"urlcleanup" ,
46
- "URLopener" ,
47
- "FancyURLopener" ,
48
46
"HTTPSHandler" ,
49
47
]
48
+ if sys .version_info < (3 , 14 ):
49
+ __all__ += ["URLopener" , "FancyURLopener" ]
50
50
51
51
_T = TypeVar ("_T" )
52
52
_UrlopenRet : TypeAlias = Any
@@ -72,11 +72,16 @@ else:
72
72
def install_opener (opener : OpenerDirector ) -> None : ...
73
73
def build_opener (* handlers : BaseHandler | Callable [[], BaseHandler ]) -> OpenerDirector : ...
74
74
75
- if sys .platform == "win32" :
76
- from nturl2path import pathname2url as pathname2url , url2pathname as url2pathname
75
+ if sys .version_info >= (3 , 14 ):
76
+ def url2pathname (url : str , * , require_scheme : bool = False , resolve_host : bool = False ) -> str : ...
77
+ def pathname2url (pathname : str , * , add_scheme : bool = False ) -> str : ...
78
+
77
79
else :
78
- def url2pathname (pathname : str ) -> str : ...
79
- def pathname2url (pathname : str ) -> str : ...
80
+ if sys .platform == "win32" :
81
+ from nturl2path import pathname2url as pathname2url , url2pathname as url2pathname
82
+ else :
83
+ def url2pathname (pathname : str ) -> str : ...
84
+ def pathname2url (pathname : str ) -> str : ...
80
85
81
86
def getproxies () -> dict [str , str ]: ...
82
87
def getproxies_environment () -> dict [str , str ]: ...
@@ -318,91 +323,94 @@ def urlretrieve(
318
323
) -> tuple [str , HTTPMessage ]: ...
319
324
def urlcleanup () -> None : ...
320
325
321
- class URLopener :
322
- version : ClassVar [str ]
323
- def __init__ (self , proxies : dict [str , str ] | None = None , ** x509 : str ) -> None : ...
324
- def open (self , fullurl : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ...
325
- def open_unknown (self , fullurl : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ...
326
- def retrieve (
327
- self ,
328
- url : str ,
329
- filename : str | None = None ,
330
- reporthook : Callable [[int , int , int ], object ] | None = None ,
331
- data : ReadableBuffer | None = None ,
332
- ) -> tuple [str , Message | None ]: ...
333
- def addheader (self , * args : tuple [str , str ]) -> None : ... # undocumented
334
- def cleanup (self ) -> None : ... # undocumented
335
- def close (self ) -> None : ... # undocumented
336
- def http_error (
337
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : bytes | None = None
338
- ) -> _UrlopenRet : ... # undocumented
339
- def http_error_default (
340
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage
341
- ) -> _UrlopenRet : ... # undocumented
342
- def open_data (self , url : str , data : ReadableBuffer | None = None ) -> addinfourl : ... # undocumented
343
- def open_file (self , url : str ) -> addinfourl : ... # undocumented
344
- def open_ftp (self , url : str ) -> addinfourl : ... # undocumented
345
- def open_http (self , url : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ... # undocumented
346
- def open_https (self , url : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ... # undocumented
347
- def open_local_file (self , url : str ) -> addinfourl : ... # undocumented
348
- def open_unknown_proxy (self , proxy : str , fullurl : str , data : ReadableBuffer | None = None ) -> None : ... # undocumented
349
- def __del__ (self ) -> None : ...
350
-
351
- class FancyURLopener (URLopener ):
352
- def prompt_user_passwd (self , host : str , realm : str ) -> tuple [str , str ]: ...
353
- def get_user_passwd (self , host : str , realm : str , clear_cache : int = 0 ) -> tuple [str , str ]: ... # undocumented
354
- def http_error_301 (
355
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
356
- ) -> _UrlopenRet | addinfourl | None : ... # undocumented
357
- def http_error_302 (
358
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
359
- ) -> _UrlopenRet | addinfourl | None : ... # undocumented
360
- def http_error_303 (
361
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
362
- ) -> _UrlopenRet | addinfourl | None : ... # undocumented
363
- def http_error_307 (
364
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
365
- ) -> _UrlopenRet | addinfourl | None : ... # undocumented
366
- if sys .version_info >= (3 , 11 ):
367
- def http_error_308 (
326
+ if sys .version_info < (3 , 14 ):
327
+ @deprecated ("Deprecated since Python 3.3; Removed in 3.14; Use newer urlopen functions and methods." )
328
+ class URLopener :
329
+ version : ClassVar [str ]
330
+ def __init__ (self , proxies : dict [str , str ] | None = None , ** x509 : str ) -> None : ...
331
+ def open (self , fullurl : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ...
332
+ def open_unknown (self , fullurl : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ...
333
+ def retrieve (
334
+ self ,
335
+ url : str ,
336
+ filename : str | None = None ,
337
+ reporthook : Callable [[int , int , int ], object ] | None = None ,
338
+ data : ReadableBuffer | None = None ,
339
+ ) -> tuple [str , Message | None ]: ...
340
+ def addheader (self , * args : tuple [str , str ]) -> None : ... # undocumented
341
+ def cleanup (self ) -> None : ... # undocumented
342
+ def close (self ) -> None : ... # undocumented
343
+ def http_error (
344
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : bytes | None = None
345
+ ) -> _UrlopenRet : ... # undocumented
346
+ def http_error_default (
347
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage
348
+ ) -> _UrlopenRet : ... # undocumented
349
+ def open_data (self , url : str , data : ReadableBuffer | None = None ) -> addinfourl : ... # undocumented
350
+ def open_file (self , url : str ) -> addinfourl : ... # undocumented
351
+ def open_ftp (self , url : str ) -> addinfourl : ... # undocumented
352
+ def open_http (self , url : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ... # undocumented
353
+ def open_https (self , url : str , data : ReadableBuffer | None = None ) -> _UrlopenRet : ... # undocumented
354
+ def open_local_file (self , url : str ) -> addinfourl : ... # undocumented
355
+ def open_unknown_proxy (self , proxy : str , fullurl : str , data : ReadableBuffer | None = None ) -> None : ... # undocumented
356
+ def __del__ (self ) -> None : ...
357
+
358
+ @deprecated ("Deprecated since Python 3.3; Removed in 3.14; Use newer urlopen functions and methods." )
359
+ class FancyURLopener (URLopener ):
360
+ def prompt_user_passwd (self , host : str , realm : str ) -> tuple [str , str ]: ...
361
+ def get_user_passwd (self , host : str , realm : str , clear_cache : int = 0 ) -> tuple [str , str ]: ... # undocumented
362
+ def http_error_301 (
368
363
self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
369
364
) -> _UrlopenRet | addinfourl | None : ... # undocumented
370
-
371
- def http_error_401 (
372
- self ,
373
- url : str ,
374
- fp : IO [bytes ],
375
- errcode : int ,
376
- errmsg : str ,
377
- headers : HTTPMessage ,
378
- data : ReadableBuffer | None = None ,
379
- retry : bool = False ,
380
- ) -> _UrlopenRet | None : ... # undocumented
381
- def http_error_407 (
382
- self ,
383
- url : str ,
384
- fp : IO [bytes ],
385
- errcode : int ,
386
- errmsg : str ,
387
- headers : HTTPMessage ,
388
- data : ReadableBuffer | None = None ,
389
- retry : bool = False ,
390
- ) -> _UrlopenRet | None : ... # undocumented
391
- def http_error_default (
392
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage
393
- ) -> addinfourl : ... # undocumented
394
- def redirect_internal (
395
- self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None
396
- ) -> _UrlopenRet | None : ... # undocumented
397
- def retry_http_basic_auth (
398
- self , url : str , realm : str , data : ReadableBuffer | None = None
399
- ) -> _UrlopenRet | None : ... # undocumented
400
- def retry_https_basic_auth (
401
- self , url : str , realm : str , data : ReadableBuffer | None = None
402
- ) -> _UrlopenRet | None : ... # undocumented
403
- def retry_proxy_http_basic_auth (
404
- self , url : str , realm : str , data : ReadableBuffer | None = None
405
- ) -> _UrlopenRet | None : ... # undocumented
406
- def retry_proxy_https_basic_auth (
407
- self , url : str , realm : str , data : ReadableBuffer | None = None
408
- ) -> _UrlopenRet | None : ... # undocumented
365
+ def http_error_302 (
366
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
367
+ ) -> _UrlopenRet | addinfourl | None : ... # undocumented
368
+ def http_error_303 (
369
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
370
+ ) -> _UrlopenRet | addinfourl | None : ... # undocumented
371
+ def http_error_307 (
372
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
373
+ ) -> _UrlopenRet | addinfourl | None : ... # undocumented
374
+ if sys .version_info >= (3 , 11 ):
375
+ def http_error_308 (
376
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None = None
377
+ ) -> _UrlopenRet | addinfourl | None : ... # undocumented
378
+
379
+ def http_error_401 (
380
+ self ,
381
+ url : str ,
382
+ fp : IO [bytes ],
383
+ errcode : int ,
384
+ errmsg : str ,
385
+ headers : HTTPMessage ,
386
+ data : ReadableBuffer | None = None ,
387
+ retry : bool = False ,
388
+ ) -> _UrlopenRet | None : ... # undocumented
389
+ def http_error_407 (
390
+ self ,
391
+ url : str ,
392
+ fp : IO [bytes ],
393
+ errcode : int ,
394
+ errmsg : str ,
395
+ headers : HTTPMessage ,
396
+ data : ReadableBuffer | None = None ,
397
+ retry : bool = False ,
398
+ ) -> _UrlopenRet | None : ... # undocumented
399
+ def http_error_default (
400
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage
401
+ ) -> addinfourl : ... # undocumented
402
+ def redirect_internal (
403
+ self , url : str , fp : IO [bytes ], errcode : int , errmsg : str , headers : HTTPMessage , data : ReadableBuffer | None
404
+ ) -> _UrlopenRet | None : ... # undocumented
405
+ def retry_http_basic_auth (
406
+ self , url : str , realm : str , data : ReadableBuffer | None = None
407
+ ) -> _UrlopenRet | None : ... # undocumented
408
+ def retry_https_basic_auth (
409
+ self , url : str , realm : str , data : ReadableBuffer | None = None
410
+ ) -> _UrlopenRet | None : ... # undocumented
411
+ def retry_proxy_http_basic_auth (
412
+ self , url : str , realm : str , data : ReadableBuffer | None = None
413
+ ) -> _UrlopenRet | None : ... # undocumented
414
+ def retry_proxy_https_basic_auth (
415
+ self , url : str , realm : str , data : ReadableBuffer | None = None
416
+ ) -> _UrlopenRet | None : ... # undocumented
0 commit comments