📜  python 链接缩短器 - Python (1)

📅  最后修改于: 2023-12-03 14:46:19.117000             🧑  作者: Mango

Python 链接缩短器

如果你需要生成短链接来分享网址,这个 Python 链接缩短器可以帮助你自动化这个过程。

安装

你需要安装以下依赖包:

  • requests
  • pyperclip

你可以使用以下命令来安装这些包:

pip install requests
pip install pyperclip
用法

你可以使用以下命令来运行程序:

python shorten.py url

其中 URL 是你要缩短的网址。

程序将打印一个短链接和 QR 码,然后将短链接复制到剪贴板上,以方便你在其他应用程序中使用它。

示例

下面是一个使用示例:

python shorten.py https://www.google.com/

此命令将打印如下内容:

Short URL: https://bit.ly/abcd12
QR Code:
╭───────────────────────────╮
│                           │
│   https://bit.ly/abcd12   │
│                           │
╰───────────────────────────╯

提示:你可以在 Bitly 网站上注册账号以获取 API key,并将其设置为 BITLY_API_KEY 环境变量。如果你不想使用 Bitly,你可以更改 API_ENDPOINT 变量以使用其他 URL 缩短服务。

代码

以下是 Python 链接缩短器的完整代码:

import os
from urllib.parse import urlencode
import requests
import pyqrcode
import pyperclip

API_ENDPOINT = 'https://api-ssl.bitly.com/v4/shorten'
HEADERS = {'Authorization': 'Bearer {}'.format(os.environ['BITLY_API_KEY'])}

def shorten_url(url):
    data = {'long_url': url}
    response = requests.post(API_ENDPOINT, json=data, headers=HEADERS)
    result = response.json()
    return result['link']

def create_qr_code(url):
    qr = pyqrcode.create(url)
    qr.print_tty()

if __name__ == '__main__':
    import sys
    url = sys.argv[1]
    short_url = shorten_url(url)
    print('Short URL:', short_url)
    create_qr_code(short_url)
    pyperclip.copy(short_url)

以上代码使用了 Bitly 的 URL 缩短 API 来生成短链接。如果 API key 未设置,则程序将无法运行。如果您对此代码还有疑问或改进,请随时在评论中提出。