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之开始真正编程
Sep 12 Python
Python解惑之True和False详解
Apr 24 Python
Python进阶_关于命名空间与作用域(详解)
May 29 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
Nov 29 Python
Python科学画图代码分享
Nov 29 Python
python中的文件打开与关闭操作命令介绍
Apr 26 Python
Python迭代器定义与简单用法分析
Apr 30 Python
python删除文本中行数标签的方法
May 31 Python
解决python中使用plot画图,图不显示的问题
Jul 04 Python
python爬虫项目设置一个中断重连的程序的实现
Jul 26 Python
python和opencv构建运动检测器的实现
Mar 03 Python
关于Numpy之repeat、tile的用法总结
Jun 02 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
php 提速工具eAccelerator 配置参数详解
2010/05/16 PHP
PHP文件大小格式化函数合集
2014/03/10 PHP
php调用shell的方法
2014/11/05 PHP
CI框架支持$_GET的两种实现方法
2016/05/18 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
jquery清空表单数据示例分享
2014/02/13 Javascript
深入解析JavaScript的闭包机制
2015/10/20 Javascript
判断是否存在子节点的实现代码
2016/05/18 Javascript
JQuery实现列表中复选框全选反选功能封装(推荐)
2016/11/24 Javascript
简单谈谈gulp-changed插件
2017/02/21 Javascript
jQuery插件zTree实现删除树子节点的方法示例
2017/03/08 Javascript
Vue.js仿Metronic高级表格(一)静态设计
2017/04/17 Javascript
Vue中mintui的field实现blur和focus事件的方法
2018/08/25 Javascript
nodejs基础之buffer缓冲区用法分析
2018/12/26 NodeJs
Jquery的Ajax技术使用方法
2019/01/21 jQuery
nodejs读取图片返回给浏览器显示
2019/07/25 NodeJs
微信小程序之侧边栏滑动实现过程解析(附完整源码)
2019/08/23 Javascript
在Express中提供静态文件的实现方法
2019/10/17 Javascript
vue-admin-template配置快捷导航的代码(标签导航栏)
2020/09/04 Javascript
微信小程序实现点赞业务
2021/02/10 Javascript
Python中的Numeric包和Numarray包使用教程
2015/04/13 Python
Python生成器以及应用实例解析
2018/02/08 Python
python批量实现Word文件转换为PDF文件
2018/03/15 Python
解决python selenium3启动不了firefox的问题
2018/10/13 Python
python 运用Django 开发后台接口的实例
2018/12/11 Python
python3去掉string中的标点符号方法
2019/01/22 Python
Django自定义用户表+自定义admin后台中的字段实例
2019/11/18 Python
django使用graphql的实例
2020/09/02 Python
python-地图可视化组件folium的操作
2020/12/14 Python
TobyDeals美国:在电子产品上获得最好的优惠和折扣
2019/08/11 全球购物
项目合作协议书
2014/04/16 职场文书
奥巴马的演讲稿
2014/05/15 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
干部职工纪律作风整改措施思想汇报
2014/10/11 职场文书
2015年仓库工作总结
2015/04/09 职场文书
小学秋季运动会通讯稿
2015/11/25 职场文书