我会再试一次。
下面的代码是我从另一个网站复制的,用户说它可以正常工作(显示屏幕截图)。Original code
我测试了代码:没有错误,但是没有保存文件。
所有问题都使用此答案来保存文件:A question!
为什么不保存页面,或者如果不保存,文件在哪里?
谢谢
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome(executable_path=r"C:\Program Files (x86)\Selenium\chromedriver.exe")
driver.get("http://www.example.com")
saveas = ActionChains(driver).key_down(Keys.CONTROL).send_keys('S').key_up(Keys.CONTROL)
saveas.perform()
答案 0 :(得分:0)
如果在浏览器中执行组合键,则只会看到“保存页面”对话框。您还需要发送ALT + S来保存页面,在Windows中,默认情况下它将保存在“下载”文件夹中。
saveas = ActionChains(driver).key_down(Keys.CONTROL).send_keys('S').key_up(Keys.CONTROL).send_keys('MyDocumentName').key_down(Keys.ALT).send_keys('S').key_up(Keys.ALT)
编辑: ActionChains不可靠。不与浏览器GUI交互会更容易。
from selenium import webdriver
driver = webdriver.Chrome(executable_path=r"C:\Program Files (x86)\Selenium\chromedriver.exe")
driver.get("http://www.example.com")
with open('page.html', 'w') as f:
f.write(driver.page_source)
答案 1 :(得分:0)
from selenium import webdriver
driver = webdriver.Chrome(executable_path=r"C:\Program Files (x86)\Selenium\chromedriver.exe")
driver.get("http://www.example.com")
with open('page.html', 'w+') as f:
f.write(driver.page_source)
f.close()
必须工作