Python如何基于selenium实现自动登录博客园


Posted in Python onDecember 16, 2019

这篇文章主要介绍了Python如何基于selenium实现自动登录博客园,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

需要做的准备:

本文章是使用Chrome,所以需要Chormedriver.exe,具体的下载过程可以百度查到

Selenium是一种自动化测试工具,能模拟浏览器的行为,所以今天我就模拟一下浏览器登陆博客园的行为。

首先,分析问题,登陆博客园需要做些什么:

1.打开浏览器

2.输入博客园主页的网址

3.点击登陆按钮,等待页面跳转

4.输入账号密码,点击登陆

知道了步骤,接下来我们用代码来实现它:from selenium import webdriverimport time#创建登陆类

from selenium import webdriver
 
import time
 
 
class Loadup:
  def __init__(self,username,password):
    self.username = username
    self.password = password
    self.driver = webdriver.Chrome()
 
  def closeBrowser(self):
    self.driver.close()
 
  def login(self):
    driver = self.driver
    driver.get('https://www.cnblogs.com/')
    time.sleep(2)
    # 使用xpath的方法来定位元素
    login_button = driver.find_element_by_xpath("//a[@onclick='login();return false']")
    login_button.click()
    time.sleep(2)
    # 使用xpath的方法来定位元素
    username_elem = driver.find_element_by_xpath("//input[@name='LoginName']")
    # 使用xpath的方法来定位元素
    username_elem.clear()
    username_elem.send_keys(self.username)
 
    # 使用xpath的方法来定位元素
    password_elem = driver.find_element_by_xpath("//input[@name='Password']")
    password_elem.clear()
    password_elem.send_keys(self.password)
 
    #  定位登陆按钮
    loadup_button = driver.find_element_by_xpath("//span[@class='ladda-label']")
    loadup_button.click()
    time.sleep()
 
Leslie_ChanId = Loadup("176******","*******") #在此输入自己的帐号和密码
Leslie_ChanId.login()

运行程序:

Python如何基于selenium实现自动登录博客园

可以看到成功登陆,仔细看,会发现“Chrome正在受自动测试软件的控制”,说明是selenium正在操作浏览器。期间,人工也是可以操作浏览器的。

后言:

在测试的过程中,可能会出现博客园的滑动图片验证,可能是因为频繁操作引起,以我目前所学很难实现自动滑正确的图片,所以需要人为的去滑动图片。

使用driver定位元素的方法不止有xpath,还可以通过id,name,linkt_text等等

使用selenium进入网页后,可以做很多操作,是一种更方便于爬取动态网页的方法。

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

Python 相关文章推荐
Django在Win7下的安装及创建项目hello word简明教程
Jul 14 Python
python访问类中docstring注释的实现方法
May 04 Python
Python爬虫利用cookie实现模拟登陆实例详解
Jan 12 Python
Python3学习笔记之列表方法示例详解
Oct 06 Python
Python实现学生成绩管理系统
Apr 05 Python
Python反转序列的方法实例分析
Mar 21 Python
Python button选取本地图片并显示的实例
Jun 13 Python
python实现加密的方式总结
Jan 19 Python
python 利用zmail库发送邮件
Sep 11 Python
python实现在列表中查找某个元素的下标示例
Nov 16 Python
python中的插入排序的简单用法
Jan 19 Python
Python实现微信表情包炸群功能
Jan 28 Python
Python正则表达式急速入门(小结)
Dec 16 #Python
如何基于Python制作有道翻译小工具
Dec 16 #Python
django框架单表操作之增删改实例分析
Dec 16 #Python
Python生成个性签名图片获取GUI过程解析
Dec 16 #Python
Python列表切片常用操作实例解析
Dec 16 #Python
python之pymysql模块简单应用示例代码
Dec 16 #Python
python装饰器使用实例详解
Dec 14 #Python
You might like
PHP文件锁定写入实例解析
2014/07/14 PHP
PDO::getAttribute讲解
2019/01/28 PHP
JQuery扩展插件Validate 2通过参数设置验证规则
2011/09/05 Javascript
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
2013/04/02 Javascript
js css后面所带参数含义介绍
2013/08/18 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
静态页面html中跳转传值的JS处理技巧
2016/06/22 Javascript
详解JS异步加载的三种方式
2017/03/07 Javascript
nodejs爬虫遇到的乱码问题汇总
2017/04/07 NodeJs
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
React Navigation 使用中遇到的问题小结
2018/05/08 Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
2018/09/02 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
解决vue做详情页跳转的时候使用created方法 数据不会更新问题
2020/07/24 Javascript
[26:24]完美副总裁、DOTA2负责人蔡玮专访:电竞如人生
2014/09/11 DOTA
[10:18]2018DOTA2国际邀请赛寻真——找回自信的TNCPredator
2018/08/13 DOTA
python批量修改文件名的实现代码
2014/09/01 Python
python中引用与复制用法实例分析
2015/06/04 Python
Python 中pandas.read_excel详细介绍
2017/06/23 Python
基于Python的关键字监控及告警
2017/07/06 Python
Python编写Windows Service服务程序
2018/01/04 Python
python3实现elasticsearch批量更新数据
2019/12/03 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解
2020/06/03 Python
Python Selenium自动化获取页面信息的方法
2020/08/31 Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
2020/10/15 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
html5构建触屏网站之touch事件介绍
2013/01/07 HTML / CSS
使用phonegap播放音频的实现方法
2017/03/31 HTML / CSS
详解HTML5常用的语义化标签
2019/09/27 HTML / CSS
美国领先的礼品卡网站:GiftCards.com
2016/11/02 全球购物
阿根廷旅游网站:almundo阿根廷
2018/02/12 全球购物
专升本自我鉴定
2013/10/10 职场文书
四风存在的原因分析
2014/02/11 职场文书
志愿者活动总结范文
2014/04/26 职场文书
一波干货,会议主持词开场白范文
2019/05/06 职场文书