在 IE、Edge、Chrome 或 Firefox 上永久阻止网络调用/url

Permanently blocking a network call / url on IE, Edge, Chrome or Firefox

我有一个网页需要整天处理,它是一个门户。我每天至少需要重新加载它大约 500 次。

我发现它非常慢,而且我发现它向我无法在此处列出的特定网站发出网络调用(只是为了加载个人资料图片),并且该网络调用超时。
现在因为它超时了,我无论如何都没有得到个人资料照片,但每次重新加载最终浪费了大约 30 秒。

我可以在 Chrome 开发工具的“网络”选项卡中阻止域,但我正在寻找更永久的修复方法。我不想让 Dev Tools 一直打开,因为它占用了宝贵的屏幕空间。我还没有找到永久阻止该特定网络呼叫的方法,这将每天节省我的时间。

现在我想到了 3 件事:

我很乐意在任何浏览器(Internet Explorer、Edge、Chrome、Firefox)上进行修复。 这个有什么线索吗?我不可能是唯一一个面对这个问题的人,但我还没有找到不使用管理员访问权限的解决方案,而我没有。

解决方法 1:从 Selenium 调用 chrome 实例,并禁用所有图像。可行,但不是最佳方法。

from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(chrome_options=chrome_options)

解决方法 2:在执行 Network.setBlockedURLs 时从 Selenium 启动 Chrome Window。它只适用于 Selenium 4 及更高版本,但目前在 Selenium 4.0.0.b3.

上不起作用

https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBlockedURLs

from selenium import webdriver
driver = webdriver.Chrome()
driver.execute_cdp_cmd('Network.setBlockedURLs', {"urls": ["https://www.somelink.com/*"]})
driver.get("www.mywebsite.com")