私はsocket.gethostbyaddr()
で楽しい時を過ごしていました。問題が発生するのは、ホストが見つからない場合、タイムアウトが実際に長くなることがある(約10秒...)asyncoreでgethostbyaddr()を実装する
偶然、私はこの記事を見つけたので、マルチスレッドを使用して問題を解決します。https://www.depier.re/attempts_to_speed_up_gethostbyaddr/
Asyncoreを使用して同等のことを実行できるかどうか疑問に思っていましたか?
import socket
import random
def get_ip():
a = str(random.randint(140,150))
b = str(random.randint(145,150))
c = str(random.randint(145,150))
for d in range(100):
addr = a + "." + b + "." + c +"."+ str(1 + d)
yield addr
for addr in get_ip():
try:
o = socket.gethostbyaddr(addr)
print addr + "...Ok :"
print "---->"+ str(o[0])
except:
print addr + "...Nothing"
便利、ありがとう! –