Bom dia Murilo,
Bom, não sei se entendi ou qual a complexidade das suas necessidades, porém tem 3 formas de fazer isso, não sei a qual lhe serviria,
1 - Você pode usar uma ferramenta de proxy, segue:
pip install browsermob-proxy
from selenium import webdriver
from browsermobproxy import Server
# Iniciar o BrowserMob Proxy
server = Server("/caminho/para/browsermob-proxy")
server.start()
proxy = server.create_proxy()
# Configurar o WebDriver para usar o proxy
proxy_url = proxy.proxy
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument(f'--proxy-server={proxy_url}')
driver = webdriver.Chrome(chrome_options=chrome_options)
# Iniciar a captura de solicitações
proxy.new_har("sua_pagina")
# Abrir a página que você deseja verificar
driver.get("URL_da_pagina")
# Realize ações com o WebDriver, como clicar em botões ou preencher formulários
# Encerrar a captura
har = proxy.har
# Analisar as solicitações capturadas
for entry in har['log']['entries']:
request_url = entry['request']['url']
print(request_url)
# Encerrar o WebDriver e o BrowserMob Proxy
driver.quit()
server.stop()
2 - Você pode usar as ferramentas de desenvolvedor do seu próprio navegador:
Neste caso, você pode abrir as ferramentas de desenvolvedor do navegador manualmente (geralmente pressionando F12) e acessar a guia "Network" para monitorar as solicitações HTTP em tempo real. Não é necessário código Python para isso, pois as ferramentas do navegador fornecem essa funcionalidade diretamente.
3 - Usar o JavaScript juntamente com o Selenium Webdriver:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("URL_da_pagina")
# Injetar um script JavaScript na página
script = """
(function() {
var xhrOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function() {
console.log('URL da solicitação: ', arguments[1]);
xhrOpen.apply(this, arguments);
};
})();
"""
driver.execute_script(script)
# Realize ações com o WebDriver, como clicar em botões ou preencher formulários
# O JavaScript injetado registrará as URLs das solicitações no console do navegador
# Encerrar o WebDriver
driver.quit()
Sem mais, espero ter ajudado.
Moisés Abel