urllib ਦਾ ਪ੍ਰੌਕਸੀ HTTP ਵਟਾਂਦਰਾ ਟ੍ਰੇਸ ਕਰਨਾ
Python 3 urllib ਦੇ HTTP ਅਤੇ HTTPS ਹੈਂਡਲਰਾਂ ਦੀ ਟ੍ਰੇਸਿੰਗ ਉਸੇ opener ਉੱਤੇ ਸਮਰੱਥ ਕਰੋ ਜਿਸ ਕੋਲ ਪ੍ਰੌਕਸੀ ਮਾਰਗ ਹੈ।
Python 3 ਦਾ urllib opener ਪ੍ਰੌਕਸੀ ਮਾਰਗ ਅਤੇ ਉਹਨਾਂ ਪ੍ਰੋਟੋਕੋਲ ਹੈਂਡਲਰਾਂ ਨਾਲ ਬਣਾਓ ਜਿਨ੍ਹਾਂ ਦਾ ਡੀਬਗ ਪੱਧਰ ਸਮਰੱਥ ਹੈ:
from urllib.request import (
HTTPHandler, HTTPSHandler, ProxyHandler, build_opener,
)
opener = build_opener(
ProxyHandler({
'http': 'http://proxy.example:8080',
'https': 'http://proxy.example:8080',
}),
HTTPHandler(debuglevel=1),
HTTPSHandler(debuglevel=1),
)
with opener.open('https://www.example.com/', timeout=10) as response:
print(response.status)
HTTPHandler ਅਤੇ HTTPSHandler ਟ੍ਰੇਸਿੰਗ ਵਿਕਲਪ ਦਿੰਦੇ ਹਨ। ProxyHandler ਮਾਰਗ ਦਿੰਦਾ ਹੈ; ਇਹ ਪ੍ਰੋਟੋਕੋਲ ਡੀਬਗ ਸੈਟਿੰਗ ਦੀ ਥਾਂ ਨਹੀਂ ਹੈ। ਦਿਖਾਇਆ ਗਿਆ ਜਨਤਕ ਬੇਨਤੀ ਸਮਰੱਥ ਜਨਤਕ ਵਿਚੋਲਿਆਂ ਦੀ ਆਗਿਆ ਹੋਣ ’ਤੇ HTTP ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਤੋਂ ਬਿਨਾਂ ਪੁਸ਼ਟੀ ਵਾਲਾ ਪਤਾ ਵਰਤ ਸਕਦਾ ਹੈ; ਕੂਕੀਜ਼ ਅਤੇ ਖਾਤਾ ਟੋਕਨ ਇਸ ਨਿਦਾਨ ਤੁਲਨਾ ਤੋਂ ਬਾਹਰ ਰੱਖੋ।
http.client ਦਾ ਅਧਾਰ ਡੀਬਗ ਆਉਟਪੁੱਟ ਮਿਆਰੀ ਆਉਟਪੁੱਟ ’ਤੇ ਛਾਪਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਭੇਜੇ ਬੇਨਤੀ ਬਾਈਟ ਅਤੇ ਪ੍ਰਾਪਤ ਜਵਾਬ ਹੈਡਰ ਦਿਖਾ ਸਕਦਾ ਹੈ, ਜੋ ਪ੍ਰੌਕਸੀ ਚੁਣੌਤੀ, ਟਨਲ ਦੀ ਅਸਵੀਕ੍ਰਿਤੀ ਜਾਂ ਬਾਅਦ ਦਾ ਮੰਜ਼ਿਲ ਜਵਾਬ ਲੱਭਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ।
ਨਿਯੰਤਰਿਤ ਬੇਨਤੀ ਵਰਤੋ ਅਤੇ ਪਹਿਚਾਣ-ਪੱਤਰ, ਕੂਕੀਜ਼ ਤੇ ਟੋਕਨ ਸਾਂਝੇ ਟ੍ਰੇਸ ਆਉਟਪੁੱਟ ਤੋਂ ਬਾਹਰ ਰੱਖੋ।