国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

python - 如何爬取登錄后的socket連接

瀏覽:82日期:2022-08-13 11:11:43

問題描述

需要爬取一個登錄以后的socket連接,這個socket會不定期的傳數據到網頁上,然后我目前只能通過不斷刷新網頁去完成,有沒有什么好的辦法可以去爬取需要網頁登錄后的socket呢?

===繼續描述:

已實現的部分

模擬登錄 (selenium模擬登錄)

偽造UA,刷新cookies,刷新sessionID(通過不停的登錄登出換cookie,定時結束webdriver再重啟來刷新sessionID)

通過Xpath 來獲取頁面的數據(lxml)

想要的結果(未實現)

他的socket數據是這樣傳給瀏覽器的,我就是想用python搞個socket client接進這個socket,然后等服務器推給我數據.python - 如何爬取登錄后的socket連接

抽象化的問題

總的來說,爬一個時間點的數據并不困難,但是對于長連接的持續爬蟲,持續監控,響應式監控我在網上找不到好的辦法,如果是設置定時任務去爬蟲,則當采樣周期過小的時候(小于1秒),則運算等成本過高且容易被封掉,有沒有什么好的辦法呢

問題解答

回答1:

HTTP是無狀態的,所以你的登陸以后狀態是通過傳給服務器一個或多個特殊值(一般在報文頭的cookie字段里)來確定的。抓一下HTTP包,然后模擬時帶上這些特殊值就OK了。

更新內容:看到它Status Code了,這應該是將連接換成websocket了,那么這個頁面一定是對方來提供的了。你可以看一下頁面的源碼,應該會有var ws = new WebSocket('ws://ip:3000'); 之類的內容。看一下對方客戶端的要求,然后改寫ws.onmessage回調函數,這個函數的話內容就任你拿捏了,你可以用它來判斷返回了新內容或者再去請求另一個服務器來處理這些新內容。你可以看一下這篇文章 網頁實時聊天之PHP實現websocket 的客戶端部分,試著修改來實現你的需求。

回答2:

找個websockt客戶端庫連就好了啊

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 97在线视频免费公开观看 | 国产菲菲视频在线观看 | 久久综合久美利坚合众国 | 国产亚洲人成在线影院 | 成人男女网18免费91 | 久久国产精品二国产精品 | 国产一级做a爰片在线 | 国产欧美日韩精品一区二 | 国产三区视频在线观看 | 国产一区二区亚洲精品 | 亚洲美女免费视频 | 97在线视频免费公开观看 | v欧美精品v日本精品 | 亚洲国产成人影院播放 | 日本一区三区二区三区四区 | 99ri在线精品视频在线播放 | 久久久久一级片 | 亚洲精品一区二区不卡 | 精品国语_高清国语自产 | 亚洲一区二区在线免费观看 | 久久精品国产午夜伦班片 | 欧美午夜精品一区二区三区 | 亚洲色视频在线播放网站 | 欧美xxxx成人免费网站 | 高清亚洲 | 久久久精品一区二区三区 | 亚欧成人 | 国产男女 爽爽爽爽视频 | 欧美成人资源 | 在线观看视频一区 | 免费观看视频成人国产 | 一级黄色毛片播放 | 怡红院男人的天堂 | 美女一丝不佳一级毛片香蕉 | 国产成人精品一区二区秒拍 | 国产欧美一区二区三区观看 | 欧美一区二区免费 | 国产在线毛片 | 久久厕所精品国产精品亚洲 | 国产欧美日韩视频免费61794 | 午夜精品一区二区三区在线观看 |