我想知道从SelensWebDRIVER示例(ChromeDRIVER)获取Cookie并将其转换为可以作为http头传递的Cookie字符串的最佳方法。以下是我尝试过的方法:获取Selify提供的每个Cookie的词典列表,然后手动添加等号和分号来格式化它,就像它在Cookie头中一样。问题是:这不起作用,在我测试的站点上,它返回500内部服务器错误,我认为这是由A.对请求的糟糕处理和B.糟糕的请求引起的,特别是Cookie部分。
cookies_list = driver.get_cookies()
cookieString = ""
for cookie in cookies_list[:-1]:
cookieString = cookieString + cookie["name"] + "="+cookie["value"]+"; "
cookieString = cookieString + cookies_list[-1]["name"] + "="+ cookies_list[-1]["value"]
print(cookieString)
有没有更简单的方法来做到这一点,和/或我格式化不起作用的Cookie字符串有什么问题。
衷心感谢您的帮助。
3条答案
按热度按时间neekobn81#
您可以将这些传递给请求函数。
0lvr5msh2#
您可以使用PICKLE将当前的Cookie保存为一个Python对象。例如:
稍后再将它们添加回来:
z18hc3ub3#
使用json将cookie转储到一个迭代器中,您可以格式化该迭代器: