长链接转短链接
实现长链接 转 短链接的API其实是很多的,我这里直接提供一个供大家使用。API:https://tinyurl.com/create.php现长如果大家觉得我这个不好用,可以自己下去找寻其它的接口,进行调用,我这里只是提供一个思路。注意:这是一个英文网站,但是界面很简单,如下:
使用起来很简单,步骤如下:
- ① 在输入框中输入待转换的原始链接;
- ② 直接点击确定;
然后,我们使用selenium自动化模拟人为操作,来获取这个短链接。我们直接先上源代码,后面在做解释。
结合下图,我们来简单说明一下实现原理。
from selenium import webdriver key_word = input("请输入转换地址:") # 驱动并自动打开chrome浏览器 browser = webdriver.Chrome() browser.get('https://tinyurl.com/create.php') # 定位输入框 browser.find_element_by_id("url").send_keys(key_word) # 定义点击按钮,并点击 browser.find_element_by_xpath('//*[@id="f"]/input[3]').click() # 查找元素 short_url = browser.find_element_by_xpath('//*[@id="contentcontainer"]/div[2]/b').text short_url
① 我们需要定位这个输入框,并写入待转换的链接;
② 点击这个“Make TinyURL!”按钮。即可完成链接跳转,后面直接获取跳转后的,网页中的短链接,即可。
下图是我使用上述代码,将我的一篇文章转换短链接后得到的URL。
这个短链接的源地址如下:https://blog.csdn.net/weixin_41261833/article/details/111546033
结果如下:
短链接转长链接
有时候,我们由于某种需求得到了一个短链接,想要获取它的原链接,此时应该怎么办呢?这个比起前面的操作,更简单了,只需要4行代码。import requests url = 'https://tinyurl.com/y3yj6hwm' res = requests.head(url) print(res.headers.get('location'))
可以看到,我们已经还原了原始链接。