>  기사  >  백엔드 개발  >  Python으로 간단한 URL 단축 도구를 만드는 방법

Python으로 간단한 URL 단축 도구를 만드는 방법

WBOY
WBOY원래의
2024-07-23 20:57:04715검색

How to Create a Simple URL Shortener Tool with Python

URL 단축 도구를 사용하면 사용자가 긴 URL을 더 짧고 관리하기 쉬운 링크로 변환할 수 있습니다. Python과 경량 웹 프레임워크인 Flask를 사용하여 이 도구의 간단한 버전을 구축할 수 있습니다.

전제 조건

시작하기 전에 다음 사항을 확인하세요.

  • 시스템에 Python이 설치되어 있어야 합니다(Python 3.6+ 권장).
  • 플라스크가 설치되었습니다. pip를 사용하여 Flask를 설치할 수 있습니다.

1단계: 환경 설정

먼저 가상환경을 만들고 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

2단계: 코드 작성

프로젝트용 디렉터리(예: url_shortener)를 만들고 그 안에 app.py라는 Python 파일을 만듭니다. 코드를 여러 섹션으로 나누겠습니다.

필수 라이브러리 가져오기

from flask import Flask, request, redirect, url_for
import string
import random

Flask 앱 및 데이터베이스 설정

간단한 메모리 내 사전을 사용하여 URL 매핑을 저장하겠습니다. 보다 강력한 솔루션을 위해 SQLite 또는 PostgreSQL과 같은 데이터베이스를 사용할 수 있습니다.

app = Flask(__name__)
url_mapping = {}

단축 URL 생성 기능

단축 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 단축 처리를 위해 라우팅

이 경로는 사용자로부터 긴 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에서 원래 긴 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)

3단계: 도구 실행

app.py 파일을 저장하고 터미널에서 실행하세요.

python app.py

Flask 개발 서버가 시작되고 웹 브라우저에서 http://127.0.0.1:5000으로 이동하면 URL 단축 도구에 액세스할 수 있습니다.

4단계: 도구 테스트

URL을 단축하려면 컬과 같은 도구나 간단한 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로 저장하고 웹 브라우저에서 엽니다. 양식을 단축하고 제출하려면 URL을 입력하세요. 리디렉션 기능을 테스트하는 데 사용할 수 있는 단축 URL이 표시됩니다.

결론

이 단계를 따르면 Python과 Flask를 사용하여 간단한 URL 단축 도구를 만들 수 있습니다.

이 도구는 사용자 인증, 분석, URL 매핑을 영구적으로 저장하기 위한 데이터베이스 등의 추가 기능을 통해 더욱 향상될 수 있습니다.

자세히 알아보고 싶으신가요? ZeroByteCode에서 프로그래밍 기사, 팁, 요령을 살펴보세요.

위 내용은 Python으로 간단한 URL 단축 도구를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.