测试积点老人 发表于 2020-9-22 10:58:43

为什么browsermob-proxy得到的request,会比chrome得到的request少?

chrome得到的请求,53个

browsermob-proxy得到的请求,48个


我的代码

# _*_ coding:utf-8 _*_
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from browsermobproxy import Server
import json
from time import sleep

try:
    # 启动代理
    server = Server(r'/Users/renguanyu/app/browsermob-proxy/2.1.4/bin/browsermob-proxy')
    server.start()
    proxy = server.create_proxy()

    # 启动浏览器
    chrome_options = Options()
    chrome_options.add_argument('--ignore-certificate-errors')
    chrome_options.add_argument('--proxy-server={0}'.format(proxy.proxy))
    # chrome_options.add_argument('--headless')# 无头模式
    browser = webdriver.Chrome(options=chrome_options)
    browser.implicitly_wait(60)

    # 监听结果
    url = 'https://www.baidu.com/'
    proxy.new_har(options={
            'captureContent': True,
            'captureHeaders': True
      })
    browser.get(url)

    # 打印network
    result = proxy.har
    log = result["log"]
    entries = log["entries"]

    list = []
    for entrie in entries:
      request = entrie["request"]
      request_url = request["url"]
      response = entrie["response"]
      status = response["status"]

      dict = {
            "url": request_url,
            "status": status
      }
      list.append(dict)

    # sleep(30)
    print("request_list",list)
    print("request_list_length",len(list))

finally:
    print("执行完毕,准备关闭程序")
    # sleep(3)
    # 关闭代理和浏览器
    proxy.close()
    print("关闭代理")
    # browser.close()
    browser.quit()
    print("关闭浏览器")


郭小贱 发表于 2020-9-23 09:08:28

你需要把所有请求对比。
比如本地缓存影响,比如请求拆分的影响等等。

海海豚 发表于 2020-9-23 09:33:04

https://q.cnblogs.com/q/DetailPage/129212/看下这个

bellas 发表于 2020-9-23 10:12:39

https://q.cnblogs.com/q/DetailPage/129212/参考下这个链接

qqq911 发表于 2020-9-23 10:22:46

分析下具体请求,看差异在那里
页: [1]
查看完整版本: 为什么browsermob-proxy得到的request,会比chrome得到的request少?