Posterior a observar en diversos repositorios y sitios de internet al concluir nos hemos encontrado la resolución que te compartimos aquí.
Solución:
Intenta emular tu navegador con selenium. Este script abrirá el save as
cuadro de diálogo de la página web. Todavía tendrá que descubrir cómo emular presionando Intro para que comience la descarga, ya que el cuadro de diálogo del archivo está fuera del alcance de Selenium (cómo hacerlo también depende del sistema operativo).
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
br = webdriver.Firefox()
br.get('http://www.google.com/')
save_me = ActionChains(br).key_down(Keys.CONTROL)
.key_down('s').key_up(Keys.CONTROL).key_up('s')
save_me.perform()
También creo seguir @Ámbar La sugerencia de capturar los recursos vinculados puede ser más simple, por lo tanto, una mejor solución. Aún así, creo que usar selenio es un buen punto de partida como br.page_source
obtendrá todo el dom junto con el contenido dinámico generado por javascript.
Puede hacerlo fácilmente con la biblioteca python simple pywebcopy.
Para la versión actual: 5.0.1
from pywebcopy import save_webpage
url = 'http://some-site.com/some-page.html'
download_folder = '/path/to/downloads/'
kwargs = 'bypass_robots': True, 'project_name': 'recognisable-name'
save_webpage(url, download_folder, **kwargs)
Tendrá html, css, js, todo en su carpeta de descarga. Completamente funcionando como el sitio original.
Aquí puedes ver las comentarios y valoraciones de los usuarios
Acuérdate de que tienes la capacidad de decir si te ayudó.