Подправил ваш код, перебирает все 5-символьные домены зоны .ru (лень было разбираться с Тором):
Результаты можно грепать или просто не выводить ничего при ошибке. Ну, в общем идея понятна, с остальным сами разберетесь.
import requests
from sys import argv
from random import choice
from colorama import Fore, Back, Style
from itertools import islice
def ururu():
digits = "abcdefghijklmnopqrstuvwxyz234567"
while (True):
yield "http://" + "".join([choice(digits) for _ in range(5)]) + '.ru'
def getdata(adr):
try:
data = requests.get(adr)
print("{} {} OK".format(Fore.GREEN, adr))
except requests.exceptions.InvalidURL:
print("{}InvalidURL".format(Fore.RED))
except requests.ConnectionError:
print("{}{} ConnectionError".format(Fore.RED, adr))
if __name__ == '__main__':
try:
limit = int(argv[1])
except (IndexError, ValueError):
limit = 100
for addr in islice(ururu(), limit):
getdata(addr)