使用SeleniumBase保存和加载Cookie时出现问题
我正在尝试保存我在Discord上的账户认证信息,登录后文件成功保存了cookies(小块数据),但是当我尝试加载这些cookies时,发现它们根本没有变化,系统还让我重新登录。这个问题在使用原始的selenium时也出现过。请不要提供使用pickle包的解决方案,我尝试了很多方法,只有playwright包有效。我希望能在seleniumbase中找到解决方案。
from seleniumbase import BaseCase
BaseCase.main(__name__, __file__)
class MyTestClass(BaseCase):
def test_swag_labs(self):
self.open("https://discord.com/")
self.sleep(5)
# self.save_cookies(name="cookies.txt")
self.load_cookies(name="cookies.txt")
self.open("https://discord.com/channels/@me")
self.sleep(5)
1 个回答
0
仅仅保存和加载 cookies 可能无法完全恢复之前的状态。一个更好的方法是为测试设置一个自定义的 user_data_dir
,然后在后续的测试中重复使用这个 user_data_dir
。
使用 SeleniumBase 的 pytest
格式,你可以通过命令行选项来设置它:
pytest --user-data-dir=my_data_dir