一键快速实现长网址缩短的Python函数shorten()。
发布时间:2023-12-28 07:29:50
为了实现长网址的缩短,我们可以使用一种称为"URL短网址"的服务。其中, 和广泛使用的是Bit.ly API。Bit.ly API可以将长网址转换为短网址,并提供使用统计数据。
首先,我们需要安装"requests"库,它允许我们发送HTTP请求。可以使用以下命令在终端中安装"requests"库:
pip install requests
接下来,我们可以创建一个Python函数shorten(),该函数将接受长网址作为输入,并返回短网址。下面是实现这个函数的代码:
import requests
def shorten(url):
api_key = 'YOUR_BITLY_API_KEY' # 替换为您自己的Bit.ly API键
api_url = f'https://api-ssl.bitly.com/v4/shorten'
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
data = {
'long_url': url
}
response = requests.post(api_url, json=data, headers=headers)
if response.status_code == 200:
response_json = response.json()
return response_json['id']
else:
return 'Error occurred'
# 调用示例
long_url = 'https://www.example.com/very_long_url'
short_url = shorten(long_url)
print(short_url)
在这个示例中,我们将替换YOUR_BITLY_API_KEY为您自己的Bit.ly API密钥。您可以在Bit.ly的开发者页面上注册并获取API密钥。
函数shorten(url)首先构建了一个POST请求到Bit.ly API,其中包含长网址。然后,它通过Authorization头信息,在请求中使用API密钥进行身份验证。最后,它从API的响应中提取短网址并返回。
通过调用shorten()函数,您可以将任何长网址转换为短网址,例如:
long_url = 'https://github.com/openai/gpt-3.5-turbo' short_url = shorten(long_url) print(short_url)
输出可能是这样的:
https://bit.ly/3i8U5LV
这是一个基本的实现,您可以根据需要进行扩展。例如,您可以添加其他功能,如错误处理和统计数据访问。
