ホームページ >バックエンド開発 >Python チュートリアル >Python でシンプルな URL 短縮ツールを作成する方法
URL 短縮ツールを使用すると、ユーザーは長い URL を取得して、より短く管理しやすいリンクに変換できます。 Python と軽量 Web フレームワークである Flask を使用して、このツールの単純なバージョンを構築できます。
始める前に、以下のものがあることを確認してください:
まず、仮想環境を作成し、Flask をインストールする必要があります。ターミナルを開いて次のコマンドを実行します:
# Create a virtual environment python -m venv myenv # Activate the virtual environment # On Windows myenv\Scripts\activate # On macOS/Linux source myenv/bin/activate # Install Flask pip install Flask
プロジェクトのディレクトリ (url_shortener など) を作成し、その中に app.py という Python ファイルを作成します。コードをセクションに分けて説明します。
from flask import Flask, request, redirect, url_for import string import random
単純なメモリ内辞書を使用して URL マッピングを保存します。より堅牢なソリューションとしては、SQLite や PostgreSQL などのデータベースを使用することもできます。
app = Flask(__name__) url_mapping = {}
短い URL キーを生成する関数を作成します。
def generate_short_url(): characters = string.ascii_letters + string.digits short_url = ''.join(random.choice(characters) for _ in range(6)) return short_url
このルートはユーザーから長い URL を受け取り、短縮バージョンを返します。
@app.route('/shorten', methods=['POST']) def shorten_url(): original_url = request.form['url'] short_url = generate_short_url() url_mapping[short_url] = original_url return f'Shortened URL: {request.host_url}{short_url}'
このルートは、ユーザーを短い URL から元の長い URL にリダイレクトします。
@app.route('/<short_url>') def redirect_url(short_url): original_url = url_mapping.get(short_url) if original_url: return redirect(original_url) else: return 'URL not found', 404
if __name__ == "__main__": app.run(debug=True)
app.py ファイルを保存し、ターミナルから実行します。
python app.py
Flask 開発サーバーが起動し、Web ブラウザで http://127.0.0.1:5000 に移動すると、URL 短縮ツールにアクセスできます。
URL を短縮するには、curl などのツールや単純な HTML フォームを使用できます。テスト用の基本的な HTML フォームは次のとおりです:
<!DOCTYPE html> <html> <head> <title>URL Shortener</title> </head> <body> <form action="http://127.0.0.1:5000/shorten" method="post"> <label for="url">Enter URL to shorten:</label> <input type="text" id="url" name="url"> <input type="submit" value="Shorten"> </form> </body> </html>
この HTML コードをindex.html として保存し、Web ブラウザで開きます。 URL を入力して短縮し、フォームを送信します。リダイレクト機能のテストに使用できる短縮 URL が表示されます。
これらの手順に従うことで、Python と Flask を使用して簡単な URL 短縮ツールを作成できます。
このツールは、ユーザー認証、分析、URL マッピングを永続的に保存するデータベースなどの追加機能によってさらに強化できます。
もっと詳しく知りたいですか? ZeroByteCode に関するプログラミング記事、ヒント、テクニックをご覧ください。
以上がPython でシンプルな URL 短縮ツールを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。