twisted怎么读/etc/hosts?

How does twisted read /etc/hosts?

默认情况下,当连接到 Linux 系统上的网站时,Twisted 会读取 /etc/hosts。我只是想知道选择了哪个扭曲的文件 /etc/hosts,所以我可以进去把它改成我选择的文件吗?

您要查找的代码在 Resolver Object line 621 中。如果您想更改解析器的行为,请按如下方式传入所需的主机文件。

from twisted.names import client
from twisted.internet import reactor

def do_lookup(domain):
    hosts = "/tmp/example"
    resolver = client.createResolver(servers=None, resolvconf=None, hosts="/tmp/example")
    d = resolver.getHostByName(domain)
    d.addBoth(lookup_done)

def lookup_done(result):
    print(result)
    reactor.stop()

domain = b'twistfoo.com'
reactor.callLater(0, do_lookup, domain)
reactor.run()