av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

selenium-python如何捕獲網(wǎng)絡(luò)流量的響應(yīng)

瀏覽:3日期:2022-08-07 15:52:57
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決selenium-python如何捕獲網(wǎng)絡(luò)流量的響應(yīng)?

您可以訪問(wèn)瀏覽器或chromedriver日志,它們?cè)诰W(wǎng)絡(luò)響應(yīng)方面略有不同。稱為瀏覽器日志,稱為performance驅(qū)動(dòng)程序日志driver。它們返回一個(gè)類似json的對(duì)象,您可以解析該對(duì)象以使用其中的Network方法提取事件:

{’level’: ’INFO’, ’message’: ’{'message':{'method':'Page.frameStoppedLoading','params':{'frameId':'FB10764A3ABF7FFC83110C39C5F7BF77'}},'webview':'C2D13BD13CF743B6D0695B35E9CC935C'}’, ’timestamp’: 1538607113832}, {’level’: ’INFO’, ’message’: ’{'message':{'method':'Page.frameDetached','params':{'frameId':'FB10764A3ABF7FFC83110C39C5F7BF77'}},'webview':'C2D13BD13CF743B6D0695B35E9CC935C'}’, ’timestamp’: 1538607113838}, {’level’: ’INFO’, ’message’: ’{'message':{'method':'Network.requestwillBeSent','params':{'documentURL':'https://stackoverflow.com/questions/52633697/selenium-python-how-to-capture-network-traffics-response','frameId':'C2D13BD13CF743B6D0695B35E9CC935C','hasUserGesture':false,'initiator':{'type':'other'},'loaderId':'5331BFDC4F466FCED920CFC9F033D2EC','request':{'headers':{'Upgrade-Insecure-Requests':'1','User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'},'initialPriority':'VeryHigh','method':'GET','mixedContentType':'none','referrerPolicy':'no-referrer-when-downgrade','url':'https://stackoverflow.com/questions/52633697/selenium-python-how-to-capture-network-traffics-response'},'requestId':'5331BFDC4F466FCED920CFC9F033D2EC','timestamp':104499.729,'type':'Document','wallTime':1538607113.838206}},'webview':'C2D13BD13CF743B6D0695B35E9CC935C'}’, ’timestamp’: 1538607113839},...}

您需要啟用登錄DesiredCapabilities,然后使用JSON模塊進(jìn)行解析:

import jsonfrom selenium import webdriverfrom selenium.webdriver.common.desired_capabilities import DesiredCapabilitiescaps = DesiredCapabilities.CHROMEcaps[’loggingPrefs’] = {’performance’: ’ALL’}driver = webdriver.Chrome(desired_capabilities=caps)driver.get(’https://stackoverflow.com/questions/52633697/selenium-python-how-to-capture-network-traffics-response’)def process_browser_log_entry(entry): response = json.loads(entry[’message’])[’message’] return responsebrowser_log = driver.get_log(’performance’) events = [process_browser_log_entry(entry) for entry in browser_log]events = [event for event in events if ’Network.response’ in event[’method’]]

我不知道是否可以使用此方法訪問(wèn)響應(yīng)數(shù)據(jù)本身,但是可以獲取響應(yīng)的URL。

解決方法

我正在使用pythonDjango創(chuàng)建一個(gè)Web應(yīng)用程序。我正在使用selenium來(lái)啟動(dòng)無(wú)頭瀏覽器(phantomjs)并單擊幾次,直到到達(dá)特定頁(yè)面。我希望捕獲網(wǎng)絡(luò)流量并獲得特定網(wǎng)絡(luò)呼叫的響應(yīng)。該網(wǎng)絡(luò)調(diào)用實(shí)際上包含一個(gè)html文檔作為其響應(yīng)。

有什么辦法可以做到這一點(diǎn)?

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 亚洲精品1区2区 | 亚洲国产成人av | 久久天天躁狠狠躁夜夜躁2014 | 欧美一级艳片视频免费观看 | 久久免费国产 | 欧美国产日韩在线 | 福利视频一区二区 | 插少妇 | 性生活毛片 | 国产精品三级在线观看 | 天天干天天操天天插 | 国产理论片 | 一区二区久久久 | 深夜免费福利 | 五月婷综合 | 欧美日韩一二三区 | 婷婷六月综合 | 欧美日韩中文字幕在线观看 | 人人看av| 国产日韩一区 | 黄色在线免费网站 | 国产做爰免费观看视频 | 亚洲永久免费 | 在线a视频 | 午夜免费看片 | 欧美一区二区精品 | 久久久久久久国产精品 | 亚洲天堂一区 | 国产美女精品 | 色av导航 | 五月婷婷在线播放 | 国产一级片在线 | 久久瑟瑟 | 亚洲九九夜夜 | 伊人精品视频 | 极品av在线 | 亚洲免费黄色 | 成人激情视频在线观看 | 日韩精品久久久久久 | 精品成人在线 | 宅男噜噜噜66一区二区 |