最近在使用Python-selenium做一个数字货币的自动化脚本时,遇到一个问题就是本地浏览器直接打开www.okex.me,因为存在cookies缓存,所以直接就会进入到登录状态,而使用代码则不行,还需要重新登陆,可是每次登录都需要短信验证码,没限制其实也无所谓,但是这每天30次,每小时五次还是有点烦的,所有就试试看能不能使用selenium的某些功能来实现这个效果。
第一种 先登录获取到cookies保存到本地的文件中,而后再次登陆的时候在读取出来添加到请求里面,代码如下
from selenium import webdriver
import json
driver = webdriver.Chrome()
driver.get("https://www.okex.me")
cookies = driver.get_cookies()
with open("cookies.txt", "w") as fp:
json.dump(cookies, fp)
#登录时读取
with open('cookies.txt', 'r') as f:
cookies= json.loads(f.read())
driver.get("https://www.okex.me")
for a in cookies:
driver.add_cookie(a)
driver.get("https://www.okex.me/otc")
最后结果是失败了,代码是没有问题的,思路也没问题,问题是这个网站......别问,菜就是罪
第二种 理论上不行那就在行动上做文章,不自己储存了,直接获取浏览器保存到本地的cookies吧
<