python 短网址_什么是短网址?如何用 Python 生成短网址?

在编辑微信文章时,发现微信页面插入一个网址会变的非常丑陋,稍微长一些的显示效果就更差!

比如这样:

强制拉伸

对于读者来说,由于微信里不能插入外链,读者要想访问一个网址,不能点击,只能手输。

WTF,那么长的一个网址!

于是我想到了短网址。

什么是短链接 ?

短网址,很简单,就是把普通网址,转换成比较短的网址。

短网址服务是随着 Twitter 和微博这样短小的互联网内容的兴起而出现的,因为这些社交网站的 140 字字数限制,如果网址不用什么办法来缩短的话,会很容易占据一条消息的绝大部分篇幅,甚至使得消息无法发出。

常见的就是微博的短网址,比如:http://t.cn/EZXC3rf 。

短网址在微博这些限制字数的应用里,好处不言而喻。短、字符少、美观、便于发布、传播。

新浪、百度等等,很多都有提供短网址转换服务。

新浪短网址

短网址的原理

当我们在浏览器里输入http://t.cn/EZXC3rf时

1、DNS 首先解析获得http://t.cn的 IP 地址;

2、当 DNS 获得 IP 地址以后(比如:116.211.169.137),会向这个地址发送 HTTP GET 请求,查询短码EZXC3rf;

3、http://t.cn服务器会通过短码EZXC3rf获取对应的长 URL;

4、请求通过 HTTP 301 转到对应的长 URL。

实现

短网址服务是需要短网址服务器的,这里我们不再重复造轮子。

百度、新浪等短网址服务都有相应的 API 接口可以直接调用。

短网址接口

新浪短网址接口的稳定性和跳转速度还是很给力的,但是接口使用时需要进行鉴权先,那就有点麻烦了,这里我们就不再演示。

百度的呢,百度的倒是不用鉴权,但是在转换我的博客地址时,居然报异常!

异常

于是,又找到了一个小众的接口:http://suo.im/。

使用也很简单:

TXT格式短网址 API 接口

接口:

http://suo.im/api.php?url=urlencode('要缩短的网址')

例如:

http://suo.im/api.php?url=http%3a%2f%2fwww.baidu.com

返回:http://suo.im/baidu

JSON格式短网址API接口

说明:format为json

例如:

http://suo.im/api.php?format=json&url=http%3a%2f%2fwww.baidu.com

返回:{"url":"http://suo.im/baidu","err":""}

代码实现

有接口,代码实现就很简单了:

import requests

long_url = "https://hoxis.github.io/learn-microservice-from-0.html"

querystring = {"url":long_url}

url = "http://suo.im/api.php"

response = requests.request("GET", url, params=querystring)

print(response.text)

运行完,就能生成自定义网址的短网址啦!

$ python suo.py

http://suo.im/51ckP5

再也不用担心公众号里插入链接了!

现在插入引用链接就是这样的啦:

参考:http://t.cn/RYUf0PW

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值