インターネット ページのランダム サンプルを取得しようとしていますが、さまざまな理由で Google 検索結果を破棄したくありません。これが私が試した方法です。
import socket
from random import randint
def doesitserveawebpage(ip):
ip=str(ip)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.connect((ip, 80))
s.shutdown(2)
return True
except:
return False
def givemerandomwebsite():
adrformat = "%d.%d.%d.%d"
while True:
adr = adrformat % tuple(randint(0,255) for _ in range(4))
try:
print "Tring %s" % adr
name = socket.gethostbyaddr(adr)
if (doesitserveawebpage(adr)):
return name
else:
continue
except socket.herror:
continue
まあ、うまくいきません。まず、動作が遅すぎる。次に、Web ページを提供しないアドレスが表示されます。このコードを改善できる方法はありますか、それともこの問題を解決する別の方法を提案していただけますか?