网上大部分用谷歌浏览器获取网页network
这里我用的是microsoft edge浏览器
python selenium+browsermobproxy环境配置
1.安装browsermbproxy
链接:https://github.com/lightbody/browsermob-proxy
2.安装 microsoft edge webdiver
查看浏览器版本
microsoft edge webdiver网址:
https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
不要忘记配置环境变量
这里的selenium要更新到selenium4
支持selenium Tools for Microsoft Edge
https://learn.microsoft.com/en-us/microsoft-edge/webdriver-chromium/#upgrading-from-selenium-3
selenium3一部分被弃用 该网站也有系统的说明
要安装java11
完整代码:
from browsermobproxy import Server
from selenium import webdriver
from selenium.webdriver.edge.options import Options
from msedge.selenium_tools import Edge, EdgeOptions
import time
server = Server(r'C:\browsermob-proxy-2.1.4-bin\browsermob-proxy-2.1.4\bin\browsermob-proxy.bat')#proxy位置
server.start()
proxy = server.create_proxy()
chrome_options = Options() 模仿谷歌形式
edge_options = EdgeOptions()
edge_options.add_argument('--proxy-server=127.0.0.1:8087')
edge_options.add_argument('--proxy-server={0}'.format(proxy.proxy))
edge_options.add_argument('--ignore-certificate-errors')
edge_options.add_argument('--disable-gpu')
driver=Edge(executable_path="C:/Program Files (x86)/Microsoft/Edge/Application/msedgedriver1.exe",options=edge_options)#webdiver地址
# 要访问的地址
base_url = "https://www..com/"#任意地址
proxy.new_har("ht_list2", options={'captureContent': True, 'captureHeaders': True, 'captureBinaryContent': True})
driver.get(base_url)
此处最好暂停几秒等待页面加载完成,不然会拿不到结果
time.sleep(3)
result = proxy.har
print(result)
版权归原作者 bachelor顾 所有, 如有侵权,请联系我们删除。