使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)

这里对于使用Python进行新浪微博的mid和url互相转换的完整攻略进行详细讲解。

1.前置知识

在进行本文中的操作前,需要了解一些相关的知识:

  • 新浪微博的URL中包含了一个mid的参数,用于唯一标识一条微博,mid是基于62进制编码的。
  • 62进制编码是一种将数值(0-9)、大写字母(A-Z)和小写字母(a-z)全部作为编码字符的进位计数制,共62个字符,将不同进制下的数值之间进行相互转换。

2.将mid转换为url

新浪微博的URL中包含了一个mid参数,可以通过mid参数获取到特定的微博。下面是将mid转换为url的方法:

def mid2url(mid):
    url = 'https://weibo.com/{}/{}'.format(mid[:mid.find('_')], mid[mid.find('_')+1:])
    return url

代码中的mid是需要转化的mid值,url即为对应的微博url。mid中下划线之前的部分为用户uid,下划线之后的部分为每条微博的唯一标识。

下面是mid2url()方法的使用示例:

mid2url('4455014833125967')
Out[2]: 'https://weibo.com/1713926427/G88afj9zX'

在代码中,我们把'4455014833125967'作为输入的mid,最后得到了该微博的url。

3.将url转换为mid

下面是将url转换为mid的方法:

def url2mid(url):
    mid = url[url.rfind('/')+1:]
    mid_10 = 0
    for i, c in enumerate(mid[::-1]):
        mid_10 += (62**i) * TABLE[c]
    return str(mid_10)
TABLE = {
    '0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9, 'a': 10, 'b': 11, 'c': 12, 'd': 13, 'e': 14, 'f': 15, 'g': 16,
    'h': 17, 'i': 18, 'j': 19, 'k': 20, 'l': 21, 'm': 22, 'n': 23, 'o': 24, 'p': 25, 'q': 26, 'r': 27, 's': 28, 't': 29, 'u': 30, 'v': 31,
    'w': 32, 'x': 33, 'y': 34, 'z': 35, 'A': 36, 'B': 37, 'C': 38, 'D': 39, 'E': 40, 'F': 41, 'G': 42, 'H': 43, 'I': 44, 'J': 45, 'K': 46,
    'L': 47, 'M': 48, 'N': 49, 'O': 50, 'P': 51, 'Q': 52, 'R': 53, 'S': 54, 'T': 55, 'U': 56, 'V': 57, 'W': 58, 'X': 59, 'Y': 60, 'Z': 61}

在代码中,url是需要转换的微博url。mid即为对应的微博mid。mid_10为10进制数。TABLE是62进制的对应表。

下面是url2mid()方法的使用示例:

url2mid('https://weibo.com/1713926427/G88afj9zX')
Out[3]: '4455014833125967'

4.总结

以上就是将新浪微博的mid和url互相转换的完整攻略。可以根据上述方法很方便的实现这个功能,尤其是mid2url()方法,可以通过传入mid值直接返回指定微博的url。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算) - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • python 爬取腾讯视频评论的实现步骤

    要爬取腾讯视频评论,可以采用以下步骤: 1. 分析腾讯视频评论的接口 腾讯视频评论的接口为:https://video.coral.qq.com/video/article/comment/v2 在浏览器中打开该接口,可以看到该接口需要传入以下参数: cid:视频id,例如 1047256471。 pageflag:分页标志,用于翻页,第一页为 0,第二页为…

    python 2023年6月7日
    00
  • 使用python将图片按标签分入不同文件夹的方法

    下面是使用Python将图片按标签分入不同文件夹的方法的完整攻略。 步骤一:安装依赖包 在Python项目中,通常需要用到两个常用的第三方库:Pillow和os,如果你已经安装了Python,可以通过以下命令安装这两个库: pip install Pillow pip install os 步骤二:准备数据 使用python进行图片分类,需要准备一个包含所有…

    python 2023年6月3日
    00
  • python按综合、销量排序抓取100页的淘宝商品列表信息

    Python按综合、销量排序抓取100页的淘宝商品列表信息 在本攻略中,我们将介绍如何使用Python按综合、销量排序抓取100页的淘宝商品列表信息,并提供一些示例。 步骤1:准备URL 在抓取淘宝商品列表信息之前,我们需要准备URL。我们可以使用requests库构造URL,也可以使用Selenium库模拟用户操作。 以下是一个示例,用于构造URL: im…

    python 2023年5月15日
    00
  • python 获取当天每个准点时间戳的实例

    下面是Python获取当天每个整点时间戳的完整攻略。 步骤1:导入模块 Python内置了datetime和time模块来处理时间和日期,我们首先需要导入这两个模块。 import datetime import time 步骤2:获取当前时间 我们可以使用datetime模块中的datetime.now()方法获取当前时间,然后使用strftime()方法…

    python 2023年6月2日
    00
  • Python中sys模块功能与用法实例详解

    Python中sys模块功能与用法实例详解 简介 在Python标准库中,sys是系统提供的一个与Python解释器紧密相关的模块,它提供了许多操作Python运行时环境的函数和变量。常见的功能包括: 获取命令行参数 修改或读取系统相关的设置,例如sys.path 查看当前Python解释器的信息,例如版本号和编译器选项 … 在本篇教程中,我们将会通过多…

    python 2023年5月19日
    00
  • python实现csdn全部博文下载并转PDF

    下面就为你详细讲解“Python实现CSDN全部博文下载并转PDF”的完整攻略。 1. 准备工作 在开始操作之前,我们需要准备以下工具和库: Python3:需要先安装Python3环境; requests库:用于发送网络请求; BeautifulSoup4库:用于解析HTML页面的内容; pdfkit库:用于将HTML页面转换为PDF文件。 其中,requ…

    python 2023年5月20日
    00
  • python实现水印图片功能

    当我们需要在图片上传或者共享时,为其添加水印,提高图片的防伪能力,使其更具有版权保护性。在python中实现图片水印的方法如下: 1.安装Pillow库 Pillow是Python的图像处理库,实现了多种图片读写格式。我们可以使用pip工具直接安装。 pip install Pillow 2.加载图片 在python中加载图片使用Pillow库中的Image…

    python 2023年5月18日
    00
  • Python使用pyexecjs代码案例解析

    在Python中,可以使用pyexecjs模块来执行JavaScript代码。以下是详细的攻略,介绍如何使用pyexecjs模块执行JavaScript代码: 安装pyexecjs模块 在使用pyexecjs模块之前,需要先安装它。可以使用以下命令在命令行中安装: pip install pyexecjs 执行JavaScript代码 可以使用pyexecj…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部