Maison > développement back-end > Tutoriel Python > Utilisez Python Flask pour créer un service de raccourcissement d'URL efficace et concis

Utilisez Python Flask pour créer un service de raccourcissement d'URL efficace et concis

王林
Libérer: 2023-05-08 17:34:32
avant
849 Les gens l'ont consulté

1. Configurez l'application Flask

Tout d'abord, créez un nouveau répertoire pour votre projet et ouvrez un terminal dans ce répertoire. Ensuite, exécutez la commande suivante pour créer un nouvel environnement virtuel pour votre projet :

# Pour Windows :
virtualenv venv
# Pour Linux :
python3 -m venv venv

Activez l'environnement virtuel en exécutant la commande suivante :

# Pour Windows
venv/Scripts/activate
# Pour Linux
source venv/bin/activate

Ensuite, installez Flask en exécutant la commande suivante :

pip install Flask

Créé dans le répertoire de votre projet Créez un nouveau fichier appelé app.py et ajoutez le code suivant pour configurer une application Flask de base : app.py并添加以下代码以设置基本的 Flask 应用程序:

from flask import Flask, request, redirect
app = Flask(__name__)
@app.route('/')
def index():
    return 'Welcome to the URL Shortener'
if __name__ == '__main__':
    app.run(debug=True)
Copier après la connexion

运行以下命令启动 Flask 开发服务器:

python app.py
Copier après la connexion

在您的网络浏览器中访问http://localhost:5000以查看“欢迎使用 URL 缩短器”消息。

二、将 URL 存储在字典中

接下来,我们会将原始 URL 及其相应的缩短 URL 存储在 Python 字典中。将以下代码添加到您的app.py文件中:

url_map = {}
@app.route('/shorten', methods=['POST'])
def shorten_url():
    original_url = request.form['url']
    short_url = generate_short_url(original_url)
    url_map[short_url] = original_url
    return short_url
def generate_short_url(original_url):
    # Generate a unique short URL for the original URL
    # (We'll implement this in the next step)
    pass
Copier après la connexion

三、生成唯一的短 URL

要生成唯一的短 URL,我们将使用哈希函数。哈希函数接受输入(在本例中为原始 URL)并返回固定长度的输出(短 URL)。我们将使用 SHA-1 哈希函数,它是 Pythonhashlib库的一部分。将以下代码添加到您的app.py文件中:

import hashlib
def generate_short_url(original_url):
    hash = hashlib.sha1(original_url.encode())
    short_url = hash.hexdigest()[:8]
    return short_url
Copier après la connexion

四、重定向到原始 URL

最后,我们将添加一个路由,以便在用户访问缩短的 URL 时将用户重定向到原始 URL。将以下代码添加到您的app.py

@app.route(&#39;/<short_url>&#39;)
def redirect_url(short_url):
    original_url = url_map.get(short_url)
    if original_url:
        return redirect(original_url
Copier après la connexion
Exécutez la commande suivante pour démarrer le serveur de développement Flask : 🎜rrreee🎜Accès dans votre navigateur Web http://localhost:5000 pour voir le message « Bienvenue dans les raccourcisseurs d'URL ». 🎜🎜2. Stockez l'URL dans un dictionnaire 🎜🎜Ensuite, nous stockerons l'URL d'origine et son URL raccourcie correspondante dans un dictionnaire Python. Ajoutez le code suivant à votre fichier app.py : 🎜rrreee🎜 3. Générez des URL courtes uniques 🎜🎜 Pour générer des URL courtes uniques, nous utiliserons une fonction de hachage. Une fonction de hachage prend une entrée (dans ce cas, une URL brute) et renvoie une sortie de longueur fixe (une URL courte). Nous utiliserons la fonction de hachage SHA-1, qui fait partie de la bibliothèque Pythonhashlib. Ajoutez le code suivant à votre fichier app.py : 🎜rrreee🎜4. Redirection vers l'URL d'origine🎜🎜Enfin, nous ajouterons un itinéraire pour rediriger l'utilisateur vers l'URL d'origine lorsqu'il visitera l'URL raccourcie. Ajoutez le code suivant à votre fichier app.py : 🎜rrreee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal