长链接转短链接

实现长链接 转 短链接的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'))
结果如下:
可以看到,我们已经还原了原始链接。
posted on 2021-03-10 21:20  始终不够啊  阅读(1159)  评论(0编辑  收藏  举报