以模拟自动登录网易126邮箱为例
通过Cookie方式实现自动登录,避开了输入用户名与密码实现登录的操作
一、模拟126邮箱自动登录的实例代码
示例:通过cookie模拟邮箱自动登录
代码如下:
#coding=utf-8
from selenium import webdriver
import time
driver = webdriver.Chrome()
访问126网易邮箱
driver.get("mail.126.com/") # 126网易邮箱登录界面
将用户名密码写入浏览器 cookie
listcookie的值是通过driver.get_cookies()获得的
listcookie = [{
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_uid',
'path': '/',
'secure': False,
'value': 'bsr202010@126.com'
}, {
'domain': 'mail.126.com',
'httpOnly': False,
'name': 'Coremail.sid',
'path': '/',
'secure': False,
'value': 'MBWmjdhFpqTQbyXCRhFFHAwjkXelXTKC'
}, {
'domain': 'mail.126.com',
'httpOnly': True,
'name': 'JSESSIONID',
'path': '/',
'secure': False,
'value': '8225992F3200104D01857C4B335BB020'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_entry_sess',
'path': '/',
'secure': False,
'value': '03046d6f275ad62a01b0832c452e7ef2024ee6e4edd67df3592bf722c5f852fd6db371dba45c2b4ec89a55e72f50589793d692901837dd62d91b3aefb90ca0560671661cf7eb2d637af7948d4b2e7732126e97245a9603f7244f16b51285daa87e7cdc59e1ee5d0419b0d35adb4a6ccb5e20b66acf304d40b33ae45fe63b7d0ff1e60234d3170f85300251619129405db3472010870cec4cf6a1c12628f378c1835fd6d7d85189bbb7595bfba0d67b2bdbd335c77cdd0547c9bb526e8c017ddd'
}, {
'domain': 'mail.126.com',
'expiry': 1918721008,
'httpOnly': False,
'name': 'face',
'path': '/',
'secure': False,
'value': 'js6'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'secu_info',
'path': '/',
'secure': False,
'value': '1'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_host',
'path': '/',
'secure': False,
'value': 'mail.126.com'
}, {
'domain': '.mail.126.com',
'expiry': 1634897008,
'httpOnly': False,
'name': 'MAIL_PINFO',
'path': '/',
'secure': False,
'value': 'bsr202010@126.com|1603361009|0|mail126|00&99|hub&1603360568&mail126#hub&420100#10#0#0|&0|mail126&unireg|bsr202010@126.com'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'MAIL_SINFO',
'path': '/',
'secure': False,
'value': '1603361009|0|#3&80#|bsr202010@126.com'
}, {
'domain': '.mail.126.com',
'httpOnly': True,
'name': 'MAIL_SESS',
'path': '/',
'secure': False,
'value': 'vV.3xxmIbzxrv9EDjAt.ZhGAB8.cXuUGKePeEMtxsToSqC5iqgFBt6sfirL9tb1nO_7cZGW3Cgf9RoPxtSrubh32yrmWL4ATN9wBaqjggjXHXkzSw7rfZ.pRXKZmV6uDKhEJvONPBmGT75re.oG.aed5.kvhIGWXcwMnvev7rQ3141yoWgRMll1WKAQoPiYtaFqUbFdESrzUr1ORwX1Z3P4rU'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'cm_last_info',
'path': '/',
'secure': False,
'value': 'dT1ic3IyMDIwMTAlNDAxMjYuY29tJmQ9aHR0cHMlM0ElMkYlMkZtYWlsLjEyNi5jb20lMkZqczYlMkZtYWluLmpzcCUzRnNpZCUzRE1CV21qZGhGcHFUUWJ5WENSaEZGSEF3amtYZWxYVEtDJnM9TUJXbWpkaEZwcVRRYnlYQ1JoRkZIQXdqa1hlbFhUS0MmaD1odHRwcyUzQSUyRiUyRm1haWwuMTI2LmNvbSUyRmpzNiUyRm1haW4uanNwJTNGc2lkJTNETUJXbWpkaEZwcVRRYnlYQ1JoRkZIQXdqa1hlbFhUS0Mmdz1odHRwcyUzQSUyRiUyRm1haWwuMTI2LmNvbSZsPS0xJnQ9LTEmYXM9dHJ1ZQ=='
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_style',
'path': '/',
'secure': False,
'value': 'js6'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_upx',
'path': '/',
'secure': False,
'value': 't3hz.mail.126.com|t4hz.mail.126.com|t7hz.mail.126.com|t8hz.mail.126.com|t1hz.mail.126.com|t2hz.mail.126.com|t1bj.mail.126.com|t2bj.mail.126.com|t3bj.mail.126.com|t4bj.mail.126.com'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'Coremail',
'path': '/',
'secure': False,
'value': 'f9f9f2ec5b969%MBWmjdhFpqTQbyXCRhFFHAwjkXelXTKC%g1a55.mail.126.com'
}, {
'domain': '.126.com',
'httpOnly': True,
'name': 'NTES_SESS',
'path': '/',
'secure': False,
'value': 'vV.3xxmIbzxrv9EDjAt.ZhGAB8.cXuUGKePeEMtxsToSqC5iqgFBt6sfirL9tb1nO_7cZGW3Cgf9RoPxtSrubh32yrmWL4ATN9wBaqjggjXHXkzSw7rfZ.pRXKZmV6uDKhEJvONPBmGT75re.oG.aed5.kvhIGWXcwMnvev7rQ3141yoWgRMll1WKAQoPiYtaFqUbFdESrzUr1ORwX1Z3P4rU'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_idc',
'path': '/',
'secure': False,
'value': '""'
}, {
'domain': 'mail.126.com',
'expiry': 1918721008,
'httpOnly': False,
'name': 'locale',
'path': '/',
'secure': False,
'value': ''
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'df',
'path': '/',
'secure': False,
'value': 'mail163_letter'
}, {
'domain': '.126.com',
'expiry': 4105008000,
'httpOnly': False,
'name': 'nts_mail_user',
'path': '/',
'secure': False,
'value': 'bsr202010@126.com:-1:1'
}, {
'domain': '.126.com',
'expiry': 1634897008,
'httpOnly': False,
'name': 'P_INFO',
'path': '/',
'secure': False,
'value': 'bsr202010@126.com|1603361009|0|mail126|00&99|hub&1603360568&mail126#hub&420100#10#0#0|&0|mail126&unireg|bsr202010@126.com'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'starttime',
'path': '/',
'secure': False,
'value': ''
}, {
'domain': '.126.com',
'httpOnly': False,
'name': 'S_INFO',
'path': '/',
'secure': False,
'value': '1603361009|0|#3&80#|bsr202010@126.com'
}, {
'domain': '.mail.126.com',
'httpOnly': False,
'name': 'mail_upx_nf',
'path': '/',
'secure': False,
'value': ''
}]
for Cookie in listcookie:
driver.add_cookie(Cookie)
t=driver.get_cookies()
print(t)
再次访问126网易邮箱,将会自动登录
driver.get('mail.126.com/') # 126网易邮箱登录界面
driver.maximize_window()
读取完cookie刷新页面
driver.refresh()
二、python运行结果
运行结果如下所示:
直接跳过了登录操作,不用输入用户名与密码即可直接进入到126邮箱界面中
三、获取listcookie值
listcookie的结果返回值如截图所示:
模拟登陆可是爬虫至关重要的一步,你学会了吗?
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取