seleniumcookie
本帖最后由 歌者文明清理员 于 2023-5-17 19:12 编辑f12只看到了字符串,可selinuum用的是字典 歌者文明清理员 发表于 2023-5-17 19:11
我帮你追问了
根据您提供的报错信息,显示'requests.utils'模块没有名为'dict_from_cookie_string'的属性。这可能是因为您使用的是较新版本的 requests 库,而该方法在该版本中已被删除或更改。
您可以尝试使用以下方法来将字符串形式的 cookie 转换为字典形式的 cookie:
import requests
# 创建一个 cookiejar 对象
cookie_jar = requests.cookies.RequestsCookieJar()
# 将字符串形式的 cookie 添加到 cookiejar 对象中
cookie_str = "cookie1=value1; cookie2=value2"
cookies = {cookie.split("="): cookie.split("=") for cookie in cookie_str.split("; ")}
for name, value in cookies.items():
cookie_jar.set(name, value)
# 将 cookiejar 对象转换为字典形式的 cookie
cookie_dict = requests.utils.dict_from_cookiejar(cookie_jar)
这样,您应该能够将字符串形式的 cookie 转换为字典形式的 cookie,并在 Selenium 中使用它们。 歌者文明清理员 发表于 2023-5-17 19:16
你就不能把联网模式打开吗,driver.findeleementbyxxxxx的我也是服了
貌似 gpt4 给出的方法更简单:
对不起,我之前的解释中出现了错误。 requests.utils 模块没有 dict_from_cookie_string 这个函数。对于将cookie字符串转换为字典,您可以使用Python的 http.cookies 模块。以下是转换过程:
1. 首先,导入 http.cookies 模块:
from http import cookies
2. 创建一个 SimpleCookie 对象,并将cookie字符串传给它:
cookie = cookies.SimpleCookie()
cookie.load("cookie1=value1; cookie2=value2")
3. 你可以通过以下方式将其转化为字典:
cookie_dict = {key: morsel.value for key, morsel in cookie.items()}
这样,您就可以将cookie字符串转换为字典,以便在Selenium中使用了。 根据您提供的信息,我猜测您在使用 Selenium 自动化测试时遇到了一个问题,即 F12 开发者工具中只能看到字符串形式的 cookie,但是 Selenium 使用的是字典形式的 cookie。
这个问题的解决方法是将字符串形式的 cookie 转换为字典形式的 cookie。可以使用 Python 中的 requests 模块中的 cookiesjar 类来实现这个转换。具体操作如下:
1. 导入 requests 模块:
import requests
2. 创建一个 cookiejar 对象:
cookie_jar = requests.cookies.cookiejar_from_dict({})
3. 将字符串形式的 cookie 添加到 cookiejar 对象中:
cookie_str = "cookie1=value1; cookie2=value2"
cookies = requests.utils.cookiejar_from_dict(requests.utils.dict_from_cookiejar(cookie_jar))
requests.utils.add_dict_to_cookiejar(cookies, requests.utils.dict_from_cookie_string(cookie_str))
4. 将 cookiejar 对象转换为字典形式的 cookie:
cookie_dict = requests.utils.dict_from_cookiejar(cookie_jar)
这样,您就可以将字符串形式的 cookie 转换为字典形式的 cookie,以便在 Selenium 中使用了。 isdkz 发表于 2023-5-17 19:08
根据您提供的信息,我猜测您在使用 Selenium 自动化测试时遇到了一个问题,即 F12 开发者工具中只能看到字 ...
https://t4.wodetu.cn/2023/05/17/c97eccf67ab5b8878367c5e7b160bacf.jpg 歌者文明清理员 发表于 2023-5-17 19:11
6啊 歌者文明清理员 发表于 2023-5-17 19:11
不用在意这些小细节{:10_256:} isdkz 发表于 2023-5-17 19:14
不用在意这些小细节
最佳都给了{:10_277:} isdkz 发表于 2023-5-17 19:14
我帮你追问了
根据您提供的报错信息,显示'requests.utils'模块没有名为'dict_from_cookie_stri ...
你就不能把联网模式打开吗,driver.findeleementbyxxxxx的我也是服了 歌者文明清理员 发表于 2023-5-17 19:16
你就不能把联网模式打开吗,driver.findeleementbyxxxxx的我也是服了
?这里有这么用吗?这里都没有用到 selenium 好吧 isdkz 发表于 2023-5-17 19:17
?这里有这么用吗?这里都没有用到 selenium 好吧
我是说其他关于seleniu的帖子,find_element_by_xxx已经弃用了
还有就是这个令人烦恼的模块版本问题{:10_277:} 歌者文明清理员 发表于 2023-5-17 19:20
我是说其他关于seleniu的帖子,find_element_by_xxx已经弃用了
还有就是这个令人烦恼的模块版本问题{:10 ...
联网也没有那么好用,还是这样子,只能自己根据经验来判断了
页:
[1]