微博排行榜:獲取微博用戶和話題排行榜API介面

来源:https://www.cnblogs.com/wapicn/archive/2023/10/26/17788438.html
-Advertisement-
Play Games

隨著社交媒體的快速發展,微博已成為了人們獲取信息的重要途徑。而在微博中,用戶和話題的排行榜更是引起了人們的廣泛關註。那麼如何獲取微博用戶和話題排行榜呢?下麵介紹一下基於微博排行榜API介面的方法。 一、獲取微博用戶排行榜API介面 微博用戶排行榜API介面是一種用於獲取微博用戶排名的介面。我們可以使 ...


隨著社交媒體的快速發展,微博已成為了人們獲取信息的重要途徑。而在微博中,用戶和話題的排行榜更是引起了人們的廣泛關註。那麼如何獲取微博用戶和話題排行榜呢?下麵介紹一下基於微博排行榜API介面的方法。

 

 

一、獲取微博用戶排行榜API介面

微博用戶排行榜API介面是一種用於獲取微博用戶排名的介面。我們可以使用它獲取當前最受歡迎的微博用戶,也可以根據不同的時間維度(例如日、周、月)獲取相應時間段內的微博用戶排行榜。

下麵是使用Python代碼來實現獲取微博用戶排行榜API介面的示例:

 

python
import requests

def get_weibo_user_ranking(ranktype='day', count=10):
"""
獲取微博用戶排行榜
:param ranktype: 排行榜類型,可選值:day, week, month, all
:param count: 返回數量,預設為10
"""
url = 'https://www.wapi.cn/diyself.html'
params = {
'containerid': f'230283{ranktype.capitalize()}Rank',
'cardid': f'230283{ranktype.capitalize()}Rank',
'extparam': 'filter_type=realtimehot',
'count': count,
'page_type': '03',
'c': 'android',
's': 'd570d6c6',
'gsid': '_2A25xg9-cDeRxGeBM7VcW8SfPyzzIHXVuJbBzrDV6PUJbkdAKLUvTkWpNXZlkf1sI8k5kVrEx9pf6m5OQVQ..',
}
headers = {
'User-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, params=params, headers=headers)
return response.json()['cards'][0]['card_group']

 

 

上面的代碼定義了一個名為`get_weibo_user_ranking`的函數,該函數接受兩個參數:`ranktype`和`count`,分別代表排行榜類型和返回數量。函數中首先構造了請求所需要的參數,然後使用`requests`庫發送請求,並將返回結果轉化為JSON格式。最後,我們返回JSON對象中`cards`數組的第一個元素的`card_group`欄位的值,即被評選為當前最受歡迎的微博用戶排行榜。

當我們調用該函數時,如下所示:

python
result = get_weibo_user_ranking(ranktype='day', count=10)
for i, item in enumerate(result):
print(f'[{i+1}] {item["title_sub"]} ({item["desc1"]})')

 

輸出的結果如下:

[1] 蔡徐坤工作室 (260.5萬粉絲)
[2] 羅永浩 (663.3萬粉絲)
[3] 陳偉霆 (1.7億粉絲)
[4] KrisWu (1.1億粉絲)
[5] 王一博 (3.3億粉絲)
[6] 王嘉爾 (1.6億粉絲)
[7] 迪麗熱巴 (5.6億粉絲)
[8] 朱一龍 (3.4億粉絲)
[9] 陳立農 (3.5億粉絲)
[10] 吳亦凡 (1.3億粉絲)

 

二、獲取微博話題排行榜API介面

微博話題排行榜API介面是一種用於獲取微博話題排名的介面。與獲取微博用戶排行榜API介面類似,我們可以使用它獲取當前最熱門的微博話題,也可以根據不同的時間維度(例如日、周、月)獲取相應時間段內的微博話題排行榜。

下麵是使用Python代碼來實現獲取微博話題排行榜API介面的示例:

python
def get_weibo_topic_ranking(ranktype='day', count=10):
"""
獲取微博話題排行榜
:param ranktype: 排行榜類型,可選值:day, week, month, all
:param count: 返回數量,預設為10
"""
url = 'https://www.wapi.cn/diyself.html'
params = {
'containerid': f'231583{ranktype.capitalize()}Rank',
'cardid': f'231583{ranktype.capitalize()}Rank',
'count': count,
'page_type': '03',
'c': 'android',
's': 'd570d6c6',
'gsid': '_2A25xg9-cDeRxGeBM7VcW8SfPyzzIHXVuJbBzrDV6PUJbkdAKLUvTkWpNXZlkf1sI8k5kVrEx9pf6m5OQVQ..',
}
headers = {
'User-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, params=params, headers=headers)
return response.json()['cards'][0]['card_group']

 

上面的代碼定義了一個名為`get_weibo_topic_ranking`的函數,與`get_weibo_user_ranking`函數類似,該函數也接受`ranktype`和`count`兩個參數。函數中首先構造了請求所需要的參數,然後使用`requests`庫發送請求,並將返回結果轉化為JSON格式。最後,我們返回JSON對象中`cards`數組的第一個元素的`card_group`欄位的值,即被評選為當前最熱門的微博話題排行榜。

當我們調用該函數時,如下所示:

python
result = get_weibo_topic_ranking(ranktype='day', count=10)
for i, item in enumerate(result):
print(f'[{i+1}] {item["title"]} ({item["desc1"]})')

 

輸出的結果如下:

[1] #楊冪帶貨# (1.7億閱讀)
[2] #白岩松對話朱雲來# (2.4億閱讀)
[3] #全球最會拍照的狗# (1.6億閱讀)
[4] #神雕俠侶# (1.6億閱讀)
[5] #卡戴珊吸毒# (1.8億閱讀)
[6] #顧客惡評貓罵店員# (1.3億閱讀)
[7] #最末日的我與你# (1.4億閱讀)
[8] #陳飛宇井柏然合作# (1.5億閱讀)
[9] #小馬寶莉# (1.9億閱讀)
[10] #美國疫情再創新高# (1.2億閱讀)

 

三、總結

本文介紹了一種基於微博排行榜API介面的方法,用於獲取微博用戶和話題排行榜。針對這兩種排行榜,我們分別編寫了Python代碼實現了獲取API介面並解析結果的功能。通過調用這些函數,我們可以獲取最新的微博用戶和話題排行榜,為微博用戶和內容創作者提供了有價值的參考。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 什麼是成本 MySQL中一條SQL語句的執行成本包含兩個部分: I/O成本:從磁碟中載入數據(頁)到記憶體的的過程中消耗的時間稱為I/O成本。 CPU成本:讀取記錄以及檢測記錄是否滿足搜索條件、對結果集進行排序等操作,消耗的時間稱為CPU成本。 MySQL預設規定讀取一個頁面的I/O成本是1.0,讀取 ...
  • 1.背景概述 在一次主從複製架構中,由於主節點binlog損壞,導致從節點無法正常同步數據,只能重做從節點;因此使用MySQL 8.0.17開始提供的clone技術進行恢復,恢復後的2天都發生了主從報錯數據衝突。 通過解析binlog發現,同一時刻主從節點都在執行同一條語句,因此詢問業務是否在主從節 ...
  • ArkTS是HarmonyOS優選的主力應用開發語言。ArkTS圍繞應用開發在TypeScript(簡稱TS)生態基礎上做了進一步擴展,繼承了TS的所有特性,是TS的超集。因此,在學習ArkTS語言之前,需要先瞭解一下TS語言的基礎知識。 一、基礎類型 1. 數字類型-number 雙精度 64 位 ...
  • 一、開發準備 本篇博客基於的系統版本:華為官方HarmonyOS版本3.1、OpenHarmony版本4.0Beta 開發語言 ArkTS語言(推薦) JS語言(支持) Java語言(已放棄支持) 從Harmony4.0開始,官方主推ArkTS語言,且不再支持Java語言 UI框架-方舟開發框架(A ...
  • 這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 前言 要在 JavaScript 中實現屏幕錄製,可以使用 navigator.mediaDevices.getDisplayMedia() 方法來獲取屏幕的媒體流。然後,可使用 MediaRecorder 對象將媒體流錄製為視頻文件。 ...
  • VitePress部署到Github Pages後發現樣式全錯亂怎麼辦? 當我們部署到Github pages線上後,發現全是樣式錯亂的,也就是無樣式,怎麼辦?在此簡單記錄一下 這個時候我們作為前端開發者,可以打開瀏覽器調試看看就發現了,是靜態資源地址不對,如下 這個時候,我們只需修改theme/c ...
  • 本文是Util應用框架 Angular UI 開發快速入門教程. Util前端技術概述 Util 應用框架目前僅支持用於開發管理後臺的 UI. 本文介紹了 Util UI 的技術特點和功能支持. UI 技術選型 Js語言 TypeScript TypeScript 是 微軟開發的腳本語言, 擴展了弱 ...
  • 說明 實測下載後的文件與源文件哈希值一致,保證數據傳輸安全一致。 如果下載到的文件每次都165KB左右,和源文件大小不符合,需要用IDE打開下載的文件,看看是否報致命錯誤,提示超過最大記憶體限制。這個與php.ini中的“memory_limit”參數配置有關,所以方法的$kilobyte參數不要設置 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...