惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Announcements
Recent Announcements
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog
T
The Blog of Author Tim Ferriss
J
Java Code Geeks
腾讯CDC
D
Docker
G
Google Developers Blog
D
DataBreaches.Net
雷峰网
雷峰网
Blog — PlanetScale
Blog — PlanetScale
S
SegmentFault 最新的问题
The Cloudflare Blog
有赞技术团队
有赞技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Stack Overflow Blog
Stack Overflow Blog
大猫的无限游戏
大猫的无限游戏
量子位
美团技术团队
aimingoo的专栏
aimingoo的专栏
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Engineering at Meta
Engineering at Meta
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

老董笔记

尚硅谷机构在哪?尚硅谷培训怎么样?靠谱吗-互联网IT百科 韩顺平介绍,传智讲师,开办泰牛,入尚硅谷等一系列-互联网IT百科 pandas多重索引标准样式(写入excel有空行)-互联网IT百科 cannot join with no overlapping index names-互联网IT百科 pandas多列变多行(即宽表变长表)melt和stack函数-互联网IT百科 pandas多行转多列(长表变宽表)pivot和unstack-互联网IT百科 Index contains duplicate entries, cannot reshape完美解决-互联网IT百科 single positional indexer is out-of-bounds-互联网IT百科 Can only compare identically-labeled Series objects-互联网IT百科 pandas transform用法详解(多个案例)-互联网IT百科 python四舍五入精确实现-互联网IT百科 pandas的groupby使用apply分组排序-互联网IT百科 index 0 is out of bounds for axis 0 with size 0-互联网IT百科 pandas分组过滤filter函数-互联网IT百科 联想Win10系统如何禁用触摸屏关闭触摸-互联网IT百科 groupby分组计算transform转换返回相同长度序列-互联网IT百科 brooks seo教程python教程,brooks seo教程网盘,布鲁seo资源-互联网IT百科 电脑右键文件夹一直转圈电卡死怎么回事-互联网IT百科 施琪嘉的心理成长课(荐)-互联网IT百科 百度SEO公司_SEO推广公司哪家好_SEO外包服务如何选-老董笔记 groupby后agg同1列用多个聚合函数、不同列用不同函数、自定义函数-互联网IT百科 pandas的groupby单列多列分组聚合运算-互联网IT百科 DataFrameGroupBy对象及分组个数、分组大小、组名索引、组数据详解-互联网IT百科 pandas中groupby之Grouper and axis must be same length-互联网IT百科 pandas中groupby的分组原理-互联网IT百科 pandas的groupby的使用详解大全-互联网IT百科 openpyxl单元格自动换行强制换行Alignment(wrapText=True)-互联网IT百科 python教程全套(可就业)-互联网IT百科 联想win10系统CPU显示100%,电脑呼呼响怎么回事-互联网IT百科 如何自制CPU,CPU原理是怎么样的?-互联网IT百科
selenium操作cookie-增删改查cookie-互联网IT百科
2020-03-11 · via 老董笔记

  我们都知道数据库需要增删改查操作,其实任何事物都一样我们操作它无外乎增删改查!cookie也是一样。selenium提供了操作cookie的方法如下:

  get_cookies(): 获得所有cookie信息。

  get_cookie(name): 获得字典的key为“name”的cookie信息。

  delete_all_cookies(): 删除所有cookie信息。

  delete_cookie(name):删除特定key为name的cookie信息

  add_cookie(cookie_dict) : 添加cookie。cookie_dict为字典对象(这里有个坑!cookie_dict的格式并不是{'k1':'v1'},而是{'name':'k1','value':'v2'})详情查看selenium报错Message: invalid cookie domain

  此外在配置的时候还可以从本地读取cookie

  options.add_argument("user-data-dir=C:/Users/dong/AppData/Local/Google/Chrome/User Data")

  上面的路径填写Chrome浏览器保存Cookies的路径。

  下面我们以百度贴吧为例子来演示下自动登录,只是采用一种稍微麻烦点的方式:

  1、先用浏览器登陆贴吧然后复制cookie出来

  2、在程序里面携带上这个cookie访问贴吧

  3、打印用户名(如果登陆成功肯定有用户名,未登录状态是没有用户名的)

# -*- coding: utf-8 -*-

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.options import Options


def get_cookie(cookie_str):
    lists = cookie_str.split(';')
    cookie = {}
    for i in lists:
        j = i.strip()
        j = j.split('=')
        cookie[j[0]] = j[1]
    return cookie


def main(tieba_url,cookie_dict):
    driver.get(tieba_url)
    for k, v in cookie_dict.items():
        driver.add_cookie({'name': k, 'value': v})
    driver.get(tieba_url)
    my_name = WebDriverWait(driver, 30).until(
        EC.visibility_of_element_located((By.CLASS_NAME, "u_username_title"))
    )
    print(my_name.text)


if __name__ == "__main__":
    # 换成你登录贴吧后从浏览器复制的cookie
    cookie_str = 'xxxx'
    option = Options()
    option.add_argument('--disable-gpu')
    option.binary_location = "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe"  # 安装的位置
    driver = webdriver.Chrome(options=option)
    tieba_url = 'https://tieba.baidu.com/'
    cookie_dict = get_cookie(cookie_str)
    main(tieba_url,cookie_dict)

  记得把cookie字符串换成你真实登录后的cookie,运行程序,你将会看到自己百度贴吧的用户名

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会