использую python3.2 и urllib
есть запрос, который кидает на редирект но по урлу редиректа уже можно понять то что нужно, и не грузить второй запрос
как бы так не дать питону перейти?
я попробовал переопределить http_error_302:
class RelativeRedirectHandler(urllib.request.HTTPRedirectHandler):
def http_error_302(self, req, fp, code, msg, headers):
...
newurl = headers['location']
...
if newurl and 'notice=ok' in newurl:
new = self.redirect_request(req, fp, code, msg, headers, newurl)
if new is None:
return
fp.read()
fp.close()
return self.parent.open(new, timeout=req.timeout)
return urllib.request.HTTPRedirectHandler.http_error_302(self, req, fp, code, msg, headers)
тут все что после проверки текста в новой ссылке - взято из request.py питона
сейчас он возвращает «urlopen error timed out», «HTTP Error 502: Proxy Error ( The Uniform Resource Locator (URL) does not use a recognized protocol», «403» и «HTTP Error 400: Bad Request» — все что угодно, только не качает нужную ссылку. Хотя все предыдущие ссылки открывает нормально.
Как запретить идти по конкретному редиректу?