我想将页面下载为 .mhtml 中的单个文件,就像使用 Chrome 完成的那样:另存为 -> 另存为单个文件
我尝试过“pywebcopy”库,但它不起作用。它会下载 HTML 和一个包含所有可下载内容的文件夹。
我也尝试过使用 Selenium webdriver,但我只能下载 HTML。
是否可以使用Selenium在窗口中打开网站然后像手动完成一样下载?
谢谢。
是的,你可以做到。
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import time
chrome_options = Options()
chrome_options.add_argument("--headless")
driver = webdriver.Chrome(service=Service('/path/to/chromedriver'), options=chrome_options)
try:
url = 'https://example.com'
driver.get(url)
time.sleep(5)
# Execute JavaScript to trigger saving as .mhtml
driver.execute_script('chrome.send(\'savePageAsMHTML\', [0, {}, function(){}]);')
time.sleep(5)
finally:
driver.quit()