更改Python脚本的DNS服务器

更改Python脚本的DNS服务器,python,dns,Python,Dns,我正在编写一个脚本,该脚本将从我所在大学的服务器上运行。 脚本的目的是检查网站并记录其HTTP状态代码和IP地址。这通常很好,但我遇到了一个我很难解决的问题: 从我的本地计算机在大学网络之外运行时,一切正常。 当我从网络内部运行脚本时,一个特定的站点没有解析。由于某种原因,我所在大学的DNS服务器无法进行查找。我无法控制那台机器,所以我在想办法绕过它 当像下面这样编写时,是否可以更改脚本使用的DNS服务器?如果没有,我应该如何做呢 有关守则: import requests import htt

我正在编写一个脚本,该脚本将从我所在大学的服务器上运行。
脚本的目的是检查网站并记录其HTTP状态代码和IP地址。这通常很好,但我遇到了一个我很难解决的问题:
从我的本地计算机在大学网络之外运行时,一切正常。
当我从网络内部运行脚本时,一个特定的站点没有解析。由于某种原因,我所在大学的DNS服务器无法进行查找。我无法控制那台机器,所以我在想办法绕过它

当像下面这样编写时,是否可以更改脚本使用的DNS服务器?如果没有,我应该如何做呢

有关守则:

import requests
import httplib
import socket

def getresponse(self,*args,**kwargs):
    response = self._old_getresponse(*args,**kwargs)
    if self.sock:
        response.peer = self.sock.getpeername()
    else:
        response.peer = None
    return response


httplib.HTTPConnection._old_getresponse = httplib.HTTPConnection.getresponse
httplib.HTTPConnection.getresponse = getresponse

def check_peer(resp):
    orig_resp = resp.raw._original_response
    if hasattr(orig_resp,'peer'):
        return getattr(orig_resp,'peer')

r = requests.get("http://www.stackoverflow.com")
try:    
    ip = check_peer(r)
except TypeError:
    ip = socket.gethostbyname_ex(site)
表示这是可能的,但修补发生在urllib级别,而不是请求级别