Pythonで作るURL短縮ツール – 初心者向けガイド

スポンサーリンク

PythonでURL短縮ツールを作りたい?もう迷うことはありません。

長いURLをナビゲートしたり共有するのは面倒です。

長いURLの背景には、リンクに含まれるトラッカーの数、重いサイトのロードされたコンテンツ(複数のディレクトリ)などがあります。

私たちは皆、そのためにURL短縮ツールを使って長いURLを数文字に短縮し、共有やナビゲートを容易にし、また見た目もきれいでエレガントにしています。

しかし、自分でURL短縮ツールをコーディングすることに疑問を持ったことはありませんか?この記事では、PythonでURL短縮機能をコーディングするプロセスを非常に簡単な手順で説明します。

URLを短縮する方法はたくさんありますが、そのほとんどはAPIを必要とし、bitlyやtinyurlなど1種類の短縮URLのみにこだわる必要があります。

スポンサーリンク

URL短縮のためのコード

この記事では、従来の方法と比較して非常に簡単にURLを短縮することができるpythonパッケージについて学びます。

1. モジュールのインストール

まず始めに、URL短縮機能のコーディングに必要なモジュールをインストールする必要があります。

まず、pip パッケージマネージャを使用して、Python ライブラリをインストールします。

Pyshorteners は、最もよく使われる URL 短縮ツールの API をラップして利用するための Python ライブラリです。

pip install pyshorteners

2. インポート、入力、初期化

Pythonファイルでは、まず必要なモジュールをインポートすることから始めます。

import pyshorteners

この時点でユーザーから入力を受けます。

入力部分はコードの後半で行うこともできますが、そうするとコードの基本/永続的な構造を変更することになるので、URL短縮ツールのAPIごとに変更することになります。

long_url = input("Enter the URL to shorten: ")

pyshortenerライブラリのクラスオブジェクトを初期化して、URLの短縮を開始します。

type_tiny = pyshorteners.Shortener()

3. URLを短縮する – Tinyurl

さて、ライブラリの初期化が終わったので、URLの短縮に取りかかりましょう。

Pythonスクリプトと同じディレクトリにない場合は、PDFの場所と一緒に名前を渡すことが要求されます。

short_url = type_tiny.tinyurl.short(long_url)
 
print("The Shortened URL is: " + short_url)

出力では、短縮されたURLが – “https://tinyurl.com/mbq3m” のような形で得られます。

このTinyURLは、URL短縮パッケージであるPyshortenerがデフォルトでTinyurl APIを使用するためです。

TinyURLのサービスを利用して短縮する最終コード

import pyshorteners
long_url = input("Enter the URL to shorten: ")
 
#TinyURL shortener service
type_tiny = pyshorteners.Shortener()
short_url = type_tiny.tinyurl.short(long_url)
 
print("The Shortened URL is: " + short_url)

しかし、これを変更することができます。

このチュートリアルでさらに学んでいきましょう。

4. URLを短縮する – Bitly

Bitlyは最も人気があり、広く利用されているURL短縮サービスです。

ここでは、PyshortenerライブラリでラップされたAPIを使用して短縮URLを生成するコードを使用します。

上記のメソッドと同じように、ShortenerメソッドにAPIキーを渡す必要があります。

type_bitly = pyshorteners.Shortener(api_key='01b6c587cskek4kdfijsjce4cf27ce2')
short_url = type_bitly.bitly.short('https://www.google.com')

APIキーはどこから入手するのか、気になるところです。

このようなページが表示されます。

パスワードを入力して、自分のアカウントのアクセストークンを生成し、コードで使用するためにトークンをコピーしてください。

Bitly API
Bitly API access token

Bitly API を使って Python で URL を短縮する最終コードです。

import pyshorteners
long_url = input("Enter the URL to shorten: ")
 
#Bitly shortener service
type_bitly = pyshorteners.Shortener(api_key='01b6c587cskek4kdfijsjce4cf27ce2')
short_url = type_bitly.bitly.short('https://www.google.com')
 
print("The Shortened URL is: " + short_url)

Bitlyのサービスでは、URL Expandingや短縮URLの総クリック数の取得など、より多くの機能を利用することも可能です。

expand_url = type_bitly.bitly.expand('https://bit.ly/TEST')
print (expand_url) # gives the url in expand or original form
 
count = type_bitly.bitly.total_clicks('https://bit.ly/TEST') #gives total no. of clicks.

APIキーを使用することで、リンクの詳細やパフォーマンスを、特定の短縮サービス(ウェブサイト)のダッシュボードのアカウントセクションで確認できるため、より良い方法でリンクを管理することができます。

5. 他のサービスを使って URL を短縮する

Pyshortenerのライブラリは様々な短縮サービスを包んでいます。

これらのサービスの公式ドキュメントを参照してください。

様々なサービスを利用するためのサンプルコードは以下のようなものです。

import pyshorteners
s = pyshorteners.Shortener()
 
#Chilp.it
s.chilpit.short('http://www.google.com')    # gives output -> 'http://chilp.it/TEST'
s.chilpit.expand('http://chilp.it/TEST')
 
# Adf.ly
s = pyshorteners.Shortener(api_key='YOUR_KEY', user_id='USER_ID', domain='test.us', group_id=12, type='int')
s.adfly.short('http://www.google.com')    # gives output -> 'http://test.us/TEST'
 
#Git.io
s = pyshorteners.Shortener(code='12345')
s.gitio.short('https://github.com/TEST')     # gives output -> 'https://git.io/12345'
s.gitio.expand('https://git.io/12345')
 
#and many more services are supported

結論

このチュートリアルは以上です。

タイトルとURLをコピーしました