python selenium登录豆瓣网过程解析


Posted in Python onAugust 10, 2019

登录流程:

  1. 实例化一个driver,然后driver.get()发送请求
  2. 最重要的:切换iframe子框架,因为豆瓣的网页中的登录那部分是一个ifrme,必须切换才能寻找到对应元素
  3. 利用selenium切换到账号密码登录
  4. 利用selenium输入账户和密码
  5. 利用selenium点击登录按钮
  6. 然后利用字典推导式保存了一下cookie

代码实现:

import time
from selenium import webdriver

# 实例化driver
driver = webdriver.Chrome()
driver.get('https://www.douban.com/')
## 切换iframe子框架
driver.switch_to.frame(driver.find_elements_by_tag_name("iframe")[0])

driver.maximize_window() # 最大化窗口
driver.find_element_by_css_selector('li.account-tab-account').click() # 点击密码登录的标签
driver.find_element_by_id('username').send_keys('13343396443')
driver.find_element_by_id('password').send_keys('lilei120400')
# 点击‘登录豆瓣'按钮
# 这里需要注意,当元素的class属性有好几个的时候,此函数的参数填class的第一个就好
driver.find_element_by_class_name('btn').click() # 元素的class属性:btn btn-account
# 获取cookies,字典推导式
cookies = {i['name']: i['value'] for i in driver.get_cookies()}
print(cookies)

time.sleep(5)
driver.quit() # 退出浏览器

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python进行基础的函数式编程的教程
Mar 31 Python
Python使用迭代器打印螺旋矩阵的思路及代码示例
Jul 02 Python
深入理解NumPy简明教程---数组2
Dec 17 Python
python破解zip加密文件的方法
May 31 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
Oct 17 Python
flask框架url与重定向操作实例详解
Jan 25 Python
python3实现raspberry pi(树莓派)4驱小车控制程序
Feb 12 Python
超全Python图像处理讲解(多模块实现)
Apr 13 Python
文件上传服务器-jupyter 中python解压及压缩方式
Apr 22 Python
Pycharm中安装wordcloud等库失败问题及终端通过pip安装的Python库如何添加到Pycharm解释器中(推荐)
May 10 Python
如何利用python读取micaps文件详解
Oct 18 Python
Python利用zhdate模块实现农历日期处理
Mar 31 Python
python matplotlib库绘制散点图例题解析
Aug 10 #Python
python matplotlib库绘制条形图练习题
Aug 10 #Python
Python OpenCV实现鼠标画框效果
Aug 19 #Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
Apr 18 #Python
python点击鼠标获取坐标(Graphics)
Aug 10 #Python
python matplotlib库直方图绘制详解
Aug 10 #Python
python字典的遍历3种方法详解
Aug 10 #Python
You might like
论建造顺序的重要性
2020/03/04 星际争霸
咖啡店都有些什么常规豆子呢?有什么风味在里面
2021/03/04 咖啡文化
php中global和$GLOBALS[]的分析之一
2012/02/02 PHP
php缓冲 output_buffering和ob_start使用介绍
2014/01/30 PHP
php导出生成word的方法
2015/12/25 PHP
PHP模拟http请求的方法详解
2016/11/09 PHP
永不消失的title提示代码
2007/02/15 Javascript
js 获取服务器控件值的代码
2010/03/05 Javascript
javascript oop开发滑动(slide)菜单控件
2010/08/25 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
JQuery 控制内容长度超出规定长度显示省略号
2014/05/23 Javascript
JavaScript实现三阶幻方算法谜题解答
2014/12/29 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
JS 实现Base64编码与解码实例详解
2016/11/07 Javascript
详解vue-cli + webpack 多页面实例配置优化方法
2017/07/13 Javascript
JavaScript设计模式之装饰者模式定义与应用示例
2018/07/25 Javascript
vue-image-crop基于Vue的移动端图片裁剪组件示例
2018/08/28 Javascript
Bootstrap-table自定义可编辑每页显示记录数
2018/09/07 Javascript
vue 使用v-for进行循环的实例代码详解
2020/02/19 Javascript
[02:17]2016国际邀请赛中国区预选赛VG战队领队采访
2016/06/26 DOTA
Python中的Matplotlib模块入门教程
2015/04/15 Python
Python实现对象转换为xml的方法示例
2017/06/08 Python
Python callable()函数用法实例分析
2018/03/17 Python
Django 创建/删除用户的示例代码
2019/07/24 Python
python颜色随机生成器的实例代码
2020/01/10 Python
用python发送微信消息
2020/12/21 Python
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
Monki官网:斯堪的纳维亚的独立时尚品牌
2020/11/09 全球购物
数据员岗位职责
2013/11/19 职场文书
致1500米运动员广播稿
2014/02/07 职场文书
企业演讲比赛主持词
2014/03/18 职场文书
平安建设实施方案
2014/03/19 职场文书
咖啡店创业计划书范文
2014/09/15 职场文书
中学生运动会广播稿
2015/08/19 职场文书
一文帮你理解PReact10.5.13源码
2021/04/03 Javascript
MySQL开启事务的方式
2021/06/26 MySQL