Python3五行代码实现缩短网址功能

December 09, 2023
测试
测试
测试
测试
9 分钟阅读

折腾了一晚上,百度和新浪的都试了,都不太好用。感谢国外的大牛。

需求

最近一直在更新校招微信机器人,详情看这里叮!你的校招提醒微信机器人已上线! 其中爬取的招聘信息链接太长了,本人是个强迫狂魔,这看起来太不美观了,必须缩短!

『睿思校园招聘信息,机器喵自动获取,仅供参考』
阿里巴巴数据技术及产品部-校园交流﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951547&extra=page%3D1&mobile=2
阿里-菜鸟2018年网络测试开发工程师部门直招﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951510&extra=page%3D1&mobile=2
(散金币)百度搜索公司SRE团队2019年校招提前批﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951473&extra=page%3D1&mobile=2
错投男儿胎,找个家教兼职都这么难(都要求女生)﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951464&extra=page%3D1&mobile=2
阿里巴巴菜鸟 测试开发工程师 内推招聘﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951463&extra=page%3D1&mobile=2
乐馨托管招聘作业辅导老师一名﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951461&extra=page%3D1&mobile=2
[散金币]  西安葡萄城信息技术有限公司2019校园招聘﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951451&extra=page%3D1&mobile=2
西安诺瓦科技2019届提前批校招开始啦,与独角兽一起开疆拓土~~~~~﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951338&extra=page%3D1&mobile=2
平安租赁招实习生啦﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951331&extra=page%3D1&mobile=2
新校区附近寻找初中家教找初中家教﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951299&extra=page%3D1&mobile=2
拼多多技术校招内推﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951283&extra=page%3D1&mobile=2
百度招实习生﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951276&extra=page%3D1&mobile=2
【散金币】西安闻泰电子科技有限公司人力资源2018校园招聘﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951258&extra=page%3D1&mobile=2
拼多多2019届 校招开始啦!﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951250&extra=page%3D1&mobile=2
乐馨托管招作业辅导老师一名﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951246&extra=page%3D1&mobile=2
【找家教】给高一的两个孩子找家教﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951235&extra=page%3D1&mobile=2
「商务运营实习」「网联」「央行、阿里、腾讯、京东入股企业」「北京」﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951189&extra=page%3D1&mobile=2
老校区附近想找份家教工作,初高中数学理综均可﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951184&extra=page%3D1&mobile=2
招女生家教﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951181&extra=page%3D1&mobile=2
招募一名会微信小程序的同学开发一个公众号,报酬丰厚﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951140&extra=page%3D1&mobile=2
【金币】【招兼职老师】短期老师﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951096&extra=page%3D1&mobile=2
【散金币】+家教咯,初三英语、数学、物理、化学﹝详细信息﹞:
http://rsbbs.xidian.edu.cn/forum.php?mod=viewthread&tid=951023&extra=page%3D1&mobile=2

实现

在网上看了一大堆原理和各种API,然而用python3实现的不多,凑巧看到国外大神的,站在巨人肩膀搞定!看代码。 先来导入包和使用try,保证鲁棒性。

import contextlib
try:
    from urllib.parse import urlencode
except ImportError:
    from urllib import urlencode
try:
    from urllib.request import urlopen
except ImportError:
    from urllib2 import urlopen
import sys

剩下的就是五行代码了。

def make_tiny(url):
    request_url = ('http://tinyurl.com/api-create.php?' + 
    urlencode({'url':url}))
    with contextlib.closing(urlopen(request_url)) as response:
        return response.read().decode('utf-8')

测试一下:

print(make_tiny("http://rs.xidian.edu.cn/forum.php?mod=viewthread&tid=951443"))

输出:

http://tinyurl.com/y7we9xnu

用浏览器打开ok,完美!

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多