我没有任何编码知识。 我需要运行一个脚本。那必须能够获取站点的http状态代码。输出必须像
一样提供domain.com 301 domain.com 200
我需要检查庞大的网站列表,例如200k网址。因此,它必须同时更快。我有代理运行它多线程。
任何帮助/想法都受到高度赞赏!
答案 0 :(得分:0)
下面是线程和串行方法。我尚未测试它可以支持的并发线程的限制,因此您可能需要实现一些代码来限制此限制。
from threading import Thread
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
class Site (Thread):
def __init__(self, thissite):
Thread.__init__(self)
self.pool = urllib3.PoolManager()
self.site = thissite
print('Started Thread for', self.site)
def run(self):
try:
r = self.pool.request('GET', self.site)
print('Thread Result', self.site, r.status)
except:
print('Thread Result', self.site, '404')
sitelist = []
f = open('D:\\Downloads\\SiteList.txt', 'r')
for x in f:
print('[' + x.strip() + ']')
sitelist.append(x.strip())
http = urllib3.PoolManager()
for site in sitelist:
Check = Site(site)
Check.start()
for site in sitelist:
try:
r = http.request('GET', site)
print('Serial Result', site, r.status)
except:
print('Serial Result', site, '404')