Python 和 Selenium - 重新启动程序并重用相同的浏览器 session

标签 python selenium session

场景:

我正在使用 Whatsapp 网络开发一个自动 Whatsapp 回复器。

我使用 python 3 在 selenium 上通过 chromedriver 登录。

我运行一个函数,该函数在 while True 内执行一些操作。

问题:

有时,由于缺乏与手机的连接,或任何其他问题,程序无法继续以正确的方式运行。

有很多因素可能会导致整个事情失去正确的流程。我正在分析所有这些问题并尽我所能修复它们。

问题:

我想出了一个想法,也许如果我每小时(或每几千次迭代)重新启动整个事情,它会变得更加坚固。因为无论发生什么,如果我还没有发现错误,它都会重新找到流程。

是否可以在不丢失浏览器 session 的情况下重新启动整个过程? Whatsapp 网络需要 QR 扫描,但它允许“在进一步的连接中保持 session 事件”(我真的不知道它是如何工作的......如果 cookies 或其他东西。)

注意:我知道 python script can be rebooted ,但这里更大的问题是重用浏览器 session 。当然,我正在做我的研究。到目前为止,我读到的所有内容都没有让我找到可靠的解决方案,这就是为什么我向所有 super 酷的大脑提出请求。

最佳答案

Whatsapp 将 session 存储在浏览器的 localStorage 中。

您可以extract the localStorage并在 session 关闭时保存到文件。

实例化 session 时,检查此文件是否存在,然后解析该文件并使用保存的值更新 localStorage,然后再打开 URL。

关于Python 和 Selenium - 重新启动程序并重用相同的浏览器 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45413194/

相关文章:

java - 如果 beforeclass 注释中的驱动程序初始化失败,则测试用例不会失败

c# - .Net session 范围变量?

python - matplotlib:绘制许多子图时,图中出现空白区域

python - Kali Linux Python IDLE(py-2.7.10) "Cannot find any package ' 2.7.10'错误

java - 测试自动化-慢动作

python - 如果出现几秒钟,如何从 <span class> 的 python 中获取带有 Selenium 的文本?

python - 如何在 Gtk3 中获取 DrawingArea 窗口句柄?

c++ - Python CTYPE:如何释放内存?获取无效的指针错误

c# - MVC session 变量在 Localhost 上工作但不在实时服务器上工作?

session - ZF2获取全局 session 容器