In Python 3, doing a basic test for web site availability is very straightforward:
- >>> import urllib.request
- >>> print(urllib.request.urlopen("https://www.cosonok.com").getcode())
- 200
- >>>
It needs a little modification so you don't get an ugly error if the website is not available:
- >>> try:
- ... a = urllib.request.urlopen("https://www.cosonok.co").getcode()
- ... print("OK (" + str(a) + ")")
- ... except urllib.error.URLError: print("FAILED")
- ...
- FAILED
- >>>
What if we want colors?
The below shows you how to install termcolor in the command prompt. There are two methods: 1) for if 'pip download' works for you, and 2) if you have to get the file manually from one machine to install on another machine. Because I am running Python on a Windows machine, we also need to get colorama. Windows cmd doesn't support ANSI coding like linux/unix which termcolor uses (perhaps termcolor is surplus to requirements with Windows cmd...)
Method 1:
- > python -m pip install termcolor
- > python -m pip install colorama
Method 2:
- python -m pip download termcolor
- python -m pip install termcolor-1.1.0.tar.gz
- pythom -m pip download colorama
- python -m pip install colorama-0.4.3-py2.py3-none-any.whl
Note: See https://pypi.org/project/termcolor/ for more on termcolor.
A modified Python script using colors - save this as say webCheck.py:
- import sys
- from termcolor import *
- import colorama
- colorama.init()
- import urllib.request
- url = "https://www.cosonok.com"
- try:
- status_code = urllib.request.urlopen(url).getcode()
- cprint(("OK(" + str(status_code) + ")"),'white','on_green')
- except urllib.error.URLError:
- cprint("FAILED",'white','on_red')
Image: Example running webCheck.py
A very sinple example. To be enhanced in a future post...
Comments
Post a Comment