как получить код состояния с помощью urllib при использовании открывателя - PullRequest
0 голосов
/ 14 ноября 2018

Я использую следующий код для использования прокси socks4 с urllib:

import socks
import socket
import urllib.request, urllib.parse, urllib.error
import http.cookiejar
import http.client as httplib
proxy = task
        ip, port = proxy.split(":")
        socket.setdefaulttimeout(timeout_value)
        log_msg = str("Trying Socks4 proxy%21s " % proxy)
        socks.set_default_proxy(socks.SOCKS4, ip, int(port))
        socket.socket = socks.socksocket
        cj = http.cookiejar.CookieJar()
        opener = urllib.request.build_opener(
                    urllib.request.HTTPCookieProcessor(cj),
                    urllib.request.HTTPRedirectHandler(),
        )
        try:
                opener.addheaders = [('User-Agent','Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30')]
                response = opener.open("https://www.google.com/search?q=iamtesting", timeout=timeout_value).read().decode("utf-8")

Теперь, как мне получить код состояния, например 404 200 502, я попробовал response.code () и response.getcode () но оба говорят, что их не существует.

...