python+selenium绕过验证码,通过cookie登录京东

这篇博客介绍了如何使用Python的Selenium库自动化登录京东网站,并在登录前后获取Cookies。登录过程包括点击登录按钮,输入用户名和密码,然后保存登录后的Cookies到文件。之后,展示了如何从文件加载Cookies,以便于后续直接访问京东,验证了登录状态。这个方法对于自动化测试和爬虫场景很有用。
摘要由CSDN通过智能技术生成
import json
from time import sleep
from selenium import webdriver

browser = webdriver.Firefox()
browser.maximize_window()
browser.implicitly_wait(2)

url = "https://www.jd.com"
browser.get(url)

# 登陆前
before_login = browser.get_cookies()

# 定位,点击“请登录”
browser.find_element_by_class_name("link-login").click()
sleep(5)
# 定位,点击“账户登录”
browser.find_element_by_link_text("账户登录").click()
sleep(5)
# 定位,输入账号
username = browser.find_element_by_id("loginname")
username.clear()
username.send_keys(input("用户名:"))
# 定位,输入密码
password = browser.find_element_by_id("nloginpwd")
password.clear()
password.send_keys(input("密码:"))
sleep(5)
# 定位,点击登录
browser.find_element_by_id("loginsubmit").click()

sleep(20)

# 登陆后
after_login = browser.get_cookies()

# 获取 cookies
cookies = browser.get_cookies()
# 将 cookies 写入文件
with open("cookies.txt", "w")  as f:
    json.dump(cookies, f)
browser.quit()

登录完成之后,获取cookie,保存下来

import json
import time
from time import sleep
from selenium import webdriver

print("Begin testing...")
browser = webdriver.Firefox()
url = "https://www.jd.com"
browser.maximize_window()
browser.implicitly_wait(2)
# 访问网站,清空旧cookies信息
browser.get(url)
sleep(5)
browser.delete_all_cookies()

# 加载 cookies信息
with open("cookies.txt", "r") as f:
 cookies = json.load(f)
for cookie in cookies:
    browser.add_cookie(cookie)

# 验证是否登录成功
browser.get(url)
time.sleep(3)
browser.quit()

通过cookies直接访问京东

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值