Skip to main content

Flask


Flask is a web framework library for Python.

Install Flask library:
pip3 install flask
initialise Flask application
app = Flask(__name__)

Define a route for the app:

@app.route('/')
def hello_world():
    return 'Hello, World!'
Run a Flask application:
if __name__ == '__main__':
    app.run()

Basic Examples

import Flask, define application, define route, add code, run application

from flask import Flask ##Import Flask libraries

app = Flask(__name__) ##initialise Flask application

@app.route('/') ##define route for / (website.com/)
def hello_world(): ##python code for /
    return 'Hello, World!'

if __name__ == '__main__': ##running the application
    app.run()
##PYTHON DOMAIN TESTING TOOL##

##LIBRARY IMPORTATION##
from flask import Flask, request, render_template
import requests

##STATUS CODE CHECK FUNCTION
def get_status_code(url):
    try:
        response = requests.get(url, allow_redirects=True)
        final_status_code = response.status_code
        redirect_chain = response.history
        return final_status_code, redirect_chain
    
    except requests.exceptions.RequestException as e:
        print(f"Error: {e}")
        return None
    
##FLASK APP INITIALISATION
app = Flask(__name__)

##ROUTE /domaintester defined
@app.route('/domaintester', methods=['GET', 'POST'])
def domain_tester():    
        
        status_code=None
        redirect_chain=None
        error=None

        if request.method == 'POST':
            url = request.form.get('url')
            status_code, redirect_chain = get_status_code(url)

            if status_code is None:
                error = redirect_chain  

        return render_template(
            'domain_tester.html',
            url=request.form.get('url', ''),
            status_code=status_code,
            redirect_chain=redirect_chain,
            error=error
        )

##Flask App Run
if __name__ == '__main__':
    app.run(debug=True)