新浪的每一条微博、评论、私信都有id,同时也有一个url。

以微博为例,每条微博都有一个url,例如http://weibo.com/1594536477/z9Ad7z6AG

其最后的z9Ad7z6AG就是该微博的url,这个url和微博的id有一个加密对应,就是10进制和62进制之间的转换。

转换规则是,url串值从最后往前,每四个字符为一组,作为一个62进制数,然后将各个62进制数转换成对应的10进制数,再将最终结果连接起来,就是该微博的id。

代码如下:

#62 to 10 dict
ALPHABET = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
DICT = {}def get_dict():for index in range(len(ALPHABET)):DICT[ALPHABET[index]] = index#62 to 10
def key62_to_key10(str_62):value = 0;for s in str_62:value = value * 62 + DICT[s]return value#transfrom msg_url to msg_id
def murl_to_mid(murl):length = len(murl)mid = ''group = int(length/4)  #four characters per grouplast_count = length % 4  #head group character counts for loop in range(group):value = key62_to_key10(murl[length-(loop+1)*4:length-loop*4])mid = str(value) + midif last_count:value = key62_to_key10(murl[:length-group*4])mid = str(value) + midreturn mid

先执行get_dict(),再执行murl_to_mid,就得到了对应的微博id。

给一个测试数据:

url : xvptc5eRe

mid: 3374860781248756

根据新浪微博的mid(url)获得微博id相关推荐

  1. 新浪微博URL中的MID和微博id互转

    $re = json_decode(file_get_contents("http://api.t.sina.com.cn/queryid.json?mid=xhMRc8nNu&is ...

  2. 新浪微博客户端开发--显示单条微博

    新浪微博客户端开发--显示单条微博 2013年11月23日 新浪微博客户端开发记录 前面两篇博客介绍了如何调用新浪微博API发布微博,任务队列的实现流程,自定义微博adapter的实现,异步更新UI的 ...

  3. JS实现仿新浪微博大厅和腾讯微博首页滚动效果_前端开发

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. Scrapy爬取新浪微博用户信息、用户微博及其微博评论转发

    项目介绍 新浪微博是国内主要的社交舆论平台,对社交媒体中的数据进行采集是舆论分析的方法之一. 本项目无需cookie,可以连续爬取一个或多个新浪微博用户信息.用户微博及其微博评论转发. 实例 选择爬取 ...

  5. 新浪微博开发之查看详细微博的实现

    实现了获取用户主页微博之后,我们还需要实现查看详细微博的功能.除微博常见的属性外,如果微博中包含图片,还要实现浏览大图的功能.同时我们还需要实现转发,评论等功能!今天我们就来实现上述功能. 详细微博: ...

  6. zencart分类页产品页去掉url中的id号

    最近公司新上的网站被seo指出要修改url,去掉url中产品id.由于我们用的是zencart框架,装了 Ultimate SEO URLs 插件,所以在网上应该有这方面的资料,本文主要参考资料: 原 ...

  7. 通过微博名查看id html,微博id在哪里查看?

    01 查看微博id有几个方法,第一,首先登录上自己的微博主页:点击右上角的[发布按钮]:在这里尝试发布一条微博:在这里尝试发布一条微博.第二,首先,打开微博,登录自己的账号:然后点击头像:点击我的主页 ...

  8. python测试脚本 进制转换_使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)...

    不过,status中包含了一个mid字段,通过mid,我们实际上是可以通过计算得到url的. 在开始计算之前有必要说明一下,什么是base62编码.它实际上就是十进制和62位进制的互换.对于62进制, ...

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

    不过,status中包含了一个mid字段,通过mid,我们实际上是可以通过计算得到url的. 在开始计算之前有必要说明一下,什么是base62编码.它实际上就是十进制和62位进制的互换.对于62进制, ...

最新文章

  1. [娱乐]一款浅陋的C++控制台贪吃蛇小游戏
  2. MySQL中update修改数据与原数据相同会再次执行吗?
  3. php的主要架构,php运行原理与基本结构
  4. Hadoop报错AccessControlException: Permission denied: user=vincent, access=WRITE, inode=/:iie4bu:supe
  5. [编程入门]宏定义之闰年判断:给年份year,定义一个宏,以判别该年份是否闰年。提示:宏名可以定义为LEAP_YEAR,形参为y,既定义宏的形式为 #define LEAP_YEAR(y) (读者设计
  6. oracle10g生成awr报告,awr报告生成位置.docx
  7. mysql server_id作用_MySQL复制过程中server-id的理解
  8. std::atomic和std::mutex区别
  9. 计算机网络 ospf重点,计算机网络:OSPF协议概述
  10. 第二阶段个人总结1(5.25)
  11. python命名实体识别工具_Day14:使用斯坦福 NER 软件包实现你自己的命名实体识别器(Named Entity Recognition,NER)...
  12. 敏捷开发一千零一问系列之八:团队习惯了分工怎么办?
  13. 全新定义!免费开源ERP平台如何玩转工业互联网
  14. 在FireFox中使用IE Tab插件
  15. php goto解密
  16. JS数组常用的方法shift,unshift,splice,split,slice
  17. 【手把手带你Godot游戏开发】FlappyBird:1.Hello World
  18. eva新世纪福音战士_新世纪福音战士EVA,一部划时代的作品!
  19. 【贪玩巴斯】数字信号处理Digital Signal Processing(DSP)——第三节「离散时间 系统 详解」2021-09-29
  20. 归置归置,我的 2022

热门文章

  1. 第三章 Dalvik 可执行格式与字节码规范
  2. 百万级数据实现PDO入库
  3. sd卡数据恢复是如何恢复删除相片的
  4. 安卓内录声音软件scr_那款安卓手机软件可以内录视频?
  5. mybatis注解查询用于简单sql,@parm()与#{}两括号取值要一致
  6. MODULE_PARM_DESC(para, mesg)
  7. Leetcode动态规划——01背包问题
  8. Python学习前传 —— Python网络爬虫
  9. php的pdo模块已经开启,PHPEMS的pdo模块加载问题
  10. MFC利用定时器实现图片移动