Skip to content

Instantly share code, notes, and snippets.

@smallsong
Forked from ameesters/quick-check.py
Created December 19, 2019 02:50
Show Gist options
  • Save smallsong/f63c90a6efc93c081ce19d1732a72d3d to your computer and use it in GitHub Desktop.
Save smallsong/f63c90a6efc93c081ce19d1732a72d3d to your computer and use it in GitHub Desktop.
A python script that checks multiple websites status.
#!/usr/bin/env python
import os, time, httplib
from termcolor import colored
SITES = [
"www.meesters-id.nl",
"www.carolsingers.nl",
]
while 1:
for site in SITES:
conn = httplib.HTTPConnection(site, timeout=10)
conn.request("HEAD", "/")
response = conn.getresponse()
if response.status != 200:
print "\a"
response.status = colored(response.status, 'red')
print "{0:30} {1:10} {2:10}".format(site, response.status, response.reason)
conn.close()
time.sleep(2)
os.system("clear")
@smallsong
Copy link
Author

#!/usr/bin/env python
import requests
from collections import namedtuple

WebsiteStatus = namedtuple('WebsiteStatus', ['status_code', 'reason'])
names = ['foo', 'bar']

def get_status(site):
try:
response = requests.head(site, timeout=5)
status_code = response.status_code
reason = response.reason
except requests.exceptions.ConnectionError:
status_code = '000'
reason = 'ConnectionError'
website_status = WebsiteStatus(status_code, reason)
return website_status

for name in names:
site = 'http://{}.com'.format(name)
website_status = get_status(site)
print("{0:30} {1:10} {2:10}"
.format(site, website_status.status_code, website_status.reason))

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment