使用Selenium添加访问cookie, 实现淘宝自动登录

1.问题描述:

淘宝在不登录的情况下, 许多信息没有显示, 而在登录滑块验证时, selenium模拟会被检测出来, 所以我们利用手机扫码登录, 保存cookies并实现之后登录访问.

2.代码实现:

(1)登录保存cookies
import json
from selenium import webdriver

dirver = webdriver.Chrome()
dirver.get(
    'https://login.taobao.com/member/login.jhtml?redirectURL=http%3A%2F%2Fbuyertrade.taobao.com%2Ftrade%2Fitemlist%2Flist_bought_items.htm%3Fspm%3D875.7931836%252FB.a2226mz.4.66144265Vdg7d5%26t%3D20110530')
# 直接用手机扫码登陆淘宝即可
dictCookies = dirver.get_cookies()
jsonCookies = json.dumps(dictCookies)
# 登录完成后,将cookies保存到本地文件
with open("cookies_tao.json", "w") as fp:
    fp.write(jsonCookies)
(2)读取cookies,实现免密码登录
import json
from selenium import webdriver

browser = webdriver.Chrome()
browser.get("https://www.taobao.com/")
browser.delete_all_cookies()
with open('cookies_tao.json', 'r', encoding='utf-8') as f:
    listCookies = json.loads(f.read())

for cookie in listCookies:
    browser.add_cookie({
        'domain': '.taobao.com',  # 此处xxx.com前,需要带点
        'name': cookie['name'],
        'value': cookie['value'],
        'path': '/',
        'expires': None
    })

browser.get("https://www.taobao.com/")
posted @ 2020-04-17 19:39  二二二狗子  阅读(2967)  评论(0)    收藏  举报