import hashlib
def shorturl(url):
base32 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
'q', 'r', 's', 't', 'u', 'v', 'w', 'x',
'y', 'z', '0', '1', '2', '3', '4', '5']
m = hashlib.md5()
m.update(url)
hexStr = m.hexdigest()
hexStrLen = len(hexStr)
subHexLen = hexStrLen / 8
output = []
for i in range(0,subHexLen):
subHex = '0x'+hexStr[i*8:(i+1)*8]
res = 0x3FFFFFFF & int(subHex,16)
out = ''
for j in range(6):
val = 0x0000001F & res
out += (base32[val])
res = res >> 5
output.append(out)
return output
分享到:
相关推荐
shorturl实现常见的做法都是将原始Url存储到数据库,由数据库返回一个对应ID。 以下要实现的是不用数据库支持就对原始URL进行shorturl hash。说到这里我们很容易想到MD5,固定长度,冲突概率小,但是32个字符,太长...
`pyshorteners` 是一个功能强大的纯 Python 库,专为URL缩短服务而设计。在互联网上,有时我们希望将长的URL转化为简短的格式,便于分享、存储或者美观。这个库就提供了解决这个问题的方案,支持多种知名的URL缩短...
`shortuuid`是一个针对Python设计的库,它的主要功能是生成简短、可读性强、URL安全的UUID替代品。这个库由Christos Skorokithakis创建,并且在GitHub上的项目名为"skorokithakis/shortuuid",最新的稳定版本为c...
`PyURLShortener`是一个实用的Flask扩展,为Web开发者提供了在Python应用中轻松实现URL缩址和重定向的工具。其简洁的API、自定义选项以及对多种数据库的支持,使得它成为构建高效、可扩展的短链服务的理想选择。通过...
class ShortURL(models.Model): original_url = models.URLField(unique=True) short_code = models.CharField(max_length=6, unique=True, blank=True) def save(self, *args, **kwargs): if not self.short_...
以上就是一个简单的短网址生成器的Python实现,涵盖了哈希、编码、数据库操作以及Web开发等多个知识点。在实际应用中,还可以考虑加入错误处理、统计分析、自定义短码等功能,以提升用户体验和系统的实用性。
今天我们要探讨的是一个名为“bos-python-sdk-0.8.4”的Python库,它是一个专为BOS(Baidu Object Storage)服务设计的SDK,旨在简化与百度云存储平台的交互过程。通过这个库,开发者可以方便地进行文件上传、下载、...
8. `short.py`:可能是一个处理URL缩短或其他简化的辅助模块。 9. `adsl.py`:可能涉及到网络连接或ADSL拨号的相关功能。 10. `mysetup.py`:Python的安装脚本,用于构建和分发软件包。 综上所述,这个项目是一个...
本项目旨在利用Python构建一个爬虫,爬取豆瓣电影Top250的电影信息,包括电影名称、评分、简介、导演、主演等,然后对数据进行处理,实现数据保存、可视化展示和词频统计。 首先,我们需要使用到Python的requests库...
ShortURL是一个使用Python3和Django框架构建的URL缩短服务,它具备实时监测功能,可以跟踪短链接的点击行为。项目结构遵循Django的标准布局,结合JavaScript提升前端交互体验。通过这个项目,开发者可以深入理解...
总结来说,“bitlyshortener-0.0.6-py3-none-any.whl”是一个方便的Python库,它简化了与Bitly短链接服务的集成,让Python开发者可以轻松地在项目中实现长网址的缩短功能。这个压缩包提供的轮子文件使得安装和使用...
该项目利用了基于springboot + vue + mysql的开发模式框架实现的课设系统,包括了项目的源码资源、sql文件、相关指引文档等等。 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理...
对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步...
对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步...
在这个项目中,我们将关注如何使用Python编写一个简单的爬虫来抓取豆瓣电影上关于《复仇者联盟4》的用户评论。这对于初学者来说是一个很好的实践案例,因为它涉及到基础的网络请求、HTML解析以及数据处理。 首先,...
对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步...
- **Web App Manifest**:一个JSON文件,定义了应用的元数据,如应用名称、图标、启动屏幕显示等,使PWA能像原生应用一样安装和显示。 - **HTTPS**:安全基础,所有PWA都必须通过HTTPS协议提供,确保数据安全和...