精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何利用Python實現實時監控別人微博動態

馬哥Linux運維 ? 來源:未知 ? 作者:易水寒 ? 2018-10-03 12:32 ? 次閱讀

前幾個星期在寫一個微博監控系統 可謂是一波三折啊 獲取到微博后因為一些字符編碼問題 導致心態爆炸開發中斷 但是就在昨天發現了另外一個微博的接口

一個手機微博的接口https://m.weibo.cn/ 經過一番測試后認為這個接口滿足我的要求 就繼續完成未完成的使命吧

0x01 分析:

這個接口直接訪問的話會有一個302跳轉到一個登陸界面

也就是說這里需要先模擬登陸一下才可以訪問到微博抓個包分析了一下

發現只要用戶名和密碼正確既返回200且json部分的retcode會返回20000000

少了驗證碼這一大坑 那模擬登陸就相當簡單啦

登陸完后訪問用戶主頁 例如:https://m.weibo.cn/u/3023940914可以在審查元素的Network模塊看到 這里用了兩個xhr來加載用戶信息及微博信息

分別是

https://m.weibo.cn/api/container/getIndex?type=uid&value=3023940914&containerid=1005053023940914https://m.weibo.cn/api/container/getIndex?type=uid&value=3023940914&containerid=1076033023940914經過測試這個接口直接加上type和value參數訪問 就相當于第一個接口 不必加上containerid參數而第二個接口的containerid參數則是通過第一個接口獲取的

獲取到第二個containerid參數訪問第二個接口就可以獲取到這個uid發布的微博了

返回的是json格式的數據 用戶的微博信息都在cards列表里每條數據的mblog數組里面 包括微博正文、圖片、來源與時間等

其中card_type標識的是微博類型 例如:文字微博 圖片微博 視頻微博 轉發等 經過測試文字微博和圖片微博的card_type標識都一樣為9

這里初步只開發監控文字和圖片微博的功能其實就是懶

0x02 開發

首先需要模擬登陸 后續的操作都需要基于登陸的格調來進行 也是需要在同個會話進行 可以使用requests.session()方法來完成代碼片段:

登陸完成后就可以拼接用戶id訪問前面說的第一個接口了訪問完后再拼接containerid參數獲取微博信息的json數據代碼片段:

這里把所有獲取到的微博的id存起來 后面繼續訪問是發現有新的微博id不在這個列表里就證明是新發布的微博代碼片段:

將這些方法封裝成了一個類 完整代碼如下

寫了個一發現有新微博就發郵件提醒的功能 完整代碼見Github地址 https://github.com/naiquann/WBMonitor

0x03 測試

運行代碼

填寫完相關的登陸信息及要監控的用戶的id后

這里寫了一個心跳包 每三秒訪問一次看看有沒有新微博發布

測試的時候這樣比較方便 要是拿來用的話可以酌情增加間隔時間

當有微博發布的時候

大功告成啦 監控小姐姐的微博去嘍~

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 監控系統
    +關注

    關注

    21

    文章

    3860

    瀏覽量

    173496
  • 代碼
    +關注

    關注

    30

    文章

    4747

    瀏覽量

    68348
  • python
    +關注

    關注

    56

    文章

    4782

    瀏覽量

    84451

原文標題:Python黑科技:利用Python實現微博監控小姐姐動態

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    樹莓派上使用OpenCV和Python實現實時人臉檢測

    理論知識,因此初學者也能輕松跟著步驟實現。 項目所需設備 硬件: 樹莓派 3 Model B; 樹莓派攝像頭模塊(PiCam)。 語言和庫: OpenCV Python 3 步驟 本文主要講述如何使用 PiCam 實現實時人臉識
    的頭像 發表于 03-06 09:00 ?5.1w次閱讀

    LED顯示屏動態顯示和遠程監控實現

    由于普通LED點陣顯示屏動態顯示通常采用硬件掃描驅動,這在一些需要特殊顯示的場合顯得不夠靈活。文中提出了一種利用PC機和單片機的通訊來實現顯示屏靈活的動態顯示和遠程
    發表于 03-07 14:35

    LAbVIEW實現實時文字對話交流

    有木有人做過使用LAbVIEW實現實時文字對話交流的,類似于QQ?求指導!
    發表于 04-16 18:16

    LabVIEW數據如何利用動態鏈接庫實時地傳遞給遠程的計算機?

    LabVIEW實驗后的數據如何利用動態鏈接庫實時地傳遞給遠程的計算機?最近在做一個項目,用LabVIEW采集并處理后的數據需要實時地傳遞給外地的實驗室,對方繼續
    發表于 04-08 20:05

    labview中怎么樣實現實時采集聲音信號

    labview中怎么樣實現實時采集聲音信號,并對聲音信號進行FFT的頻譜分析?如圖K是進行離散傅里葉變換后取的從1到512,SK是K對應的幅值。如何實現這個公式啊
    發表于 04-28 14:42

    【DNA Kit申請】利用手機對大棚溫濕度的實時監控

    申請理由:利用手機與大棚的溫濕度的實時監控利用wifi模塊,實現大棚的物聯網技術,讓農業更加智能化。項目描述:
    發表于 09-23 11:46

    用Labview實現對設備的實時監測和遠程監控的問題?

    純小白一個,現在要給一個設備做一個實時監測和遠程監控的上位機,主要是現場實時的采集傳感器的信號,然后在軟件上顯示,然后還要讓別的計算機可以遠程的監測數據和控制機器,想問一下大神們,實時
    發表于 12-20 21:46

    請問樹莓派官方的攝像頭能進行實時監控嗎?

    請問樹莓派官方的攝像頭不能進行實時監控嗎!是不是實現實時監控只能用USB攝像頭啊!
    發表于 11-11 05:55

    Python如何實現模糊動態聚類

    利用Python實現模糊動態聚類
    發表于 06-02 17:38

    光線追蹤如何實現實時三維圖形?

    什么是光線追蹤?光線追蹤如何實現實時三維圖形?
    發表于 02-26 07:03

    如何利用Python實現Arduino UNO的串口通信呢

    利用Python實現串口通信的原理是什么?如何利用Python實現Arduino UNO的串口
    發表于 12-21 06:32

    基于SVG的實時監控系統設計與實現

    基于SVG的實時監控系統設計與實現 SVG克服了現有的基于象素的Web上的圖形的缺點并且很好的融合了傳統Wab 的標準,同時彌補了Web。圖形在動態性和交互式能力方面的
    發表于 02-22 17:20 ?32次下載

    采用Protothread實現實時多任務系統

    采用Protothread實現實時多任務系統 在許多系統資源非常緊張的單片機應用中,使用實時操作系統進行任務調度來實現實時多任務系統時,由操作系統帶來
    發表于 03-29 15:10 ?1439次閱讀
    采用Protothread<b class='flag-5'>實現實時</b>多任務系統

    基于python的ngxtop的安裝、監控nginx與用法解析

    ngxtop是用python開發的一款監控nginx訪問日志的工具, 它可以實時動態地查看訪問最多的請求。
    的頭像 發表于 02-01 11:44 ?5060次閱讀
    基于<b class='flag-5'>python</b>的ngxtop的安裝、<b class='flag-5'>監控</b>nginx與用法解析

    通過利用CCD傳感技術實現物體的動態實時測量

    目前,對物體的重量進行測量主要依據兩種基本原理。一是利用力學中的杠桿平衡原理,二是利用各種傳感器將物體的重量信息轉化成電信號,再對此電信號進行分析處理提取該物體的重量信息。前者適用范圍廣,量程大,是一種經濟的方法,但測量精度有限且需人工完成,因此,這種方法無法
    的頭像 發表于 04-02 09:21 ?3602次閱讀
    通過<b class='flag-5'>利用</b>CCD傳感技術<b class='flag-5'>實現</b>物體的<b class='flag-5'>動態</b><b class='flag-5'>實時</b>測量