在Python中使用Selenium在Firefox上保存网页
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了在Python中使用Selenium在Firefox上保存网页,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1146字,纯文字阅读大概需要2分钟。
内容图文
![在Python中使用Selenium在Firefox上保存网页](/upload/InfoBanner/zyjiaocheng/699/bfc22777adb740aeb3fa0d774cbf5895.jpg)
我试图在Python中使用Selenium来保存MacOS Firefox上的网页.
到目前为止,我已经设法点击COMMAND S弹出SAVE AS窗口.然而,
我不知道如何:
>更改文件的目录,
>更改名称
文件,和
>单击SAVE AS按钮.
有人可以帮忙吗?
下面是我用来单击COMMAND S的代码:
ActionChains(browser).key_down(Keys.COMMAND).send_keys("s").key_up(Keys.COMMAND).perform()
此外,我使用这种方法的原因是我遇到Unicode编码错误: –
>将page_source写入html文件并且
>将废弃的信息存储到csv文件中.
写一个html文件:
file_object = open(completeName, "w")
html = browser.page_source
file_object.write(html)
file_object.close()
写入csv文件:
csv_file_write.writerow(to_write)
错误:
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\xf8′ in
position 1: ordinal not in range(128)
解决方法:
你想要实现的是Selenium无法做到的.打开的对话框不是Selenium可以与之交互的对象.
您可以执行的收尾操作是收集page_source,它将为您提供单个页面的完整HTML并将其保存到文件中.
import codecs
completeName = os.path.join(save_path, file_name)
file_object = codecs.open(completeName, "w", "utf-8")
html = browser.page_source
file_object.write(html)
如果你真的需要保存整个网站,你应该使用像AutoIT这样的工具.这样就可以与保存对话框进行交互.
内容总结
以上是互联网集市为您收集整理的在Python中使用Selenium在Firefox上保存网页全部内容,希望文章能够帮你解决在Python中使用Selenium在Firefox上保存网页所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。