Browsermob-Proxy 備忘


1、下載Browsermob-Proxy到本地

下載地址:

百度雲盤地址:https://pan.baidu.com/s/1jx2xVkFDMDL2nr4ulWCNuQ 提取碼: re8x

Github:https://github.com/lightbody/browsermob-proxy

下載后解壓,代碼中需要用到 browsermob-proxy.bat 文件

2、安裝Browsermob-Proxy的python包

pip install browsermob-proxy

3、實例代碼

import time
from browsermobproxy import Server
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

if __name__ == '__main__':
    # 開啟代理
    BMPserver = Server(r'C:\browsermob-proxy-2.1.4\bin\browsermob-proxy.bat')
    BMPserver.start()
    BMPproxy = BMPserver.create_proxy()

    # 配置代理啟動webdriver
    chrome_options = Options()
    # 禁用擴展插件
    chrome_options.add_argument('--ignore-certificate-errors')
    # https需要加上,要不然回報安全連接問題
    chrome_options.add_argument('--ignore-urlfetcher-cert-requests')
    chrome_options.add_argument('--proxy-server={}'.format(BMPproxy.proxy))
    # 不顯示瀏覽器窗口
    chrome_options.add_argument("--headless")
    dr = webdriver.Chrome(options=chrome_options)

    BMPproxy.new_har("kgdxpr", options={'captureContent': True, 'captureContent': True, 'captureBinaryContent': True})

    url = "https://www.youzy.cn/tzy/search/colleges/collegeList"
    dr.get(url)
    # 手動加睡眠,等待整個頁面的請求加載完成
    time.sleep(2)

    result = BMPproxy.har

    for entry in result['log']['entries']:
        # 打印頁面所有調用的地址
        # print(entry['request']['method'], entry['request']['url'])
        entry_url = entry['request']['url']
        # 根據URL找到數據接口
        if "/youzy.dms.basiclib.api.college.ranking.byyear.query" in entry_url:
            if str(entry['request']['method']) == 'POST':
                _response = entry['response']
                print('****************************')
                print(_response['content']['text'])
                print('****************************')
        else:
            continue

    BMPproxy.close()
    BMPserver.stop()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM