selenium 实现自动登录校网(网页版)
文章目录
- selenium 实现自动登录校网
- 1、安装 python3.7
- 2、安装 selenium
- 3、安装 chrome 和驱动
- 4、定时任务
- 5、实现代码
selenium 实现自动登录校网
学校使用的服务器使用校园网认证登录连接网络,时不时会断网,每次断网都得跑到机房去重新登录。去年我采用 selenium + 定时指令写了一个可以自动登录的程序,但是前几天不能用了,报了个错误:
AttributeError: 'WebDriver' object has no attribute 'find_element_by_id'
检查之后,发现是 selenium 版本更新导致原来的函数不存在了,现在统一了函数格式为find_element(By.属性)
。修改之后,已经可以正常使用了。
趁这个机会,我把实现的方法分享给大家。
1、安装 python3.7
selenium 只能在 python3 使用,所以先安装 python3
# 安装依赖
yum install -y openssl-devel openssl-static zlib-devel lzma tk-devel xz-devel bzip2-devel ncurses-devel gdbm-devel readline-devel sqlite-devel gcc libffi-devel# 安装 python3
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
tar -xvf Python-3.7.0.tgz
mv Python-3.7.0 /usr/local
cd /usr/local/Python-3.7.0/
./configure
make & make install# 生成软链接
ln -s /usr/local/Python-3.7.0/python /usr/bin/python3
服务器默认 python 的版本是 python2,我们需要手动修改默认的 python 版本
# 设置默认python版本
vi ~/.bash_profile
# 添加内容
alias python="/usr/bin/python3"
alias pip="/usr/local/bin/pip3"
# 重启bash
source ~/.bash_profile
2、安装 selenium
安装 python3 的自动化库 selenium,更多使用方法可以去查阅相关资料。
# 安装selenium,使用豆瓣源,并添加信任
pip install selenium -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
3、安装 chrome 和驱动
selenium 需要浏览器驱动,这里以 chrome 驱动为例
首先,安装 chrome,下面提供两种方法,根据自己的需要会进行选择
# 方法一:输入命令
curl https://intoli.com/install-google-chrome.sh | bash# 方法二:
vim /etc/yum.repos.d/google-chrome.repo
# 添加信息
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-sl.google.com/linux/linux_signing_key.pub
# 查询可用版本(实时更新)
yum list | grep chrome
yum -y install 谷歌浏览器版本 --nogpgcheck# 测试安装是否成功
google-chrome --headless --disable-gpu --screenshot https://www.baidu.com
其次,安装 chrome dirver,一定要确保安装的 chrome dirver 与安装的 chrome 版本是一致的
# 首先查看 chrome 的版本
google-chrome --version
# 访问:https://chromedriver.storage.googleapis.com/index.html,下载对应的内核驱动
# 注意:这里浏览器的版本与浏览器驱动版本的匹配,不能照抄
wget https://chromedriver.storage.googleapis.com/浏览器版本/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
4、定时任务
定时任务的实现,使用 crontab -e
指令进入编辑界面后,每一行都代表一项任务,每行的每个字段代表一项设置,对应的设置如下:minute hour day month week command
输入自己要执行的定时任务内容,我需要则要输入的内容是:
1 6,12,18 * * * python ~/daily/login.py
5、实现代码
编写代码时,不能照搬,打开对应的网站,打开开发者工具,对照编写。
# -*- coding:utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By# 如果设置定时任务的是 root,则需要这段代码,关闭沙盒,具体自行查阅相关资料
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
options.add_argument('--no-sandbox')# 浏览器驱动的路径要设置成绝对路径,否则有一定几率报错
driver = webdriver.Chrome(executable_path="/root/daily/chromedriver", chrome_options=options)
driver.get("校园网登录地址")
# 网页源代码
# print(driver.page_source)
# 从浏览器的地址栏中读取当前URL
print(driver.current_url)
# 从浏览器中读取当前页面标题
print(driver.title)print('开始登录')
driver.find_element(By.ID, 'VipDefaultAccount').send_keys('账号')
driver.find_element(By.ID, 'VipDefaultPassword').send_keys('密码')
driver.find_element(By.ID, 'login').click()
print('登录成功')driver.quit()
selenium 实现自动登录校网(网页版)相关推荐
- selenium自动登录知网下载论文
自动登录知网下载期刊论文 我想下载知网上所有关于深度学习推荐系统的论文期刊,脚本实现了,写这篇博客记录自己遇到的坑 2自动打开网页 我们通过python selenium库可以实现浏览器自动控制,首先 ...
- python自动输入账号密码_Python如何基于selenium实现自动登录博客园
这篇文章主要介绍了Python如何基于selenium实现自动登录博客园,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 需要做的准备: 本文章是使用 ...
- TOM企业邮箱登录入口在哪里?分享企业邮箱登录入口手机网页版
企业邮箱像个人邮箱一样,可以从很多入口登录,例如网页端.客户端.APP等.今天主要跟大家介绍TOM企业邮箱手机网页版的登录入口. 在什么情况下会用到手机登录企业邮箱呢? 出差在外,但同事说老板发了邮件 ...
- 去哪儿网网页版机票数据
目录 携程手机版国内机票数据 携程手机版国际机票数据 携程网页版国内机票数据 携程网页版国际机票数据 去哪儿网手机版机票数据 去哪儿网网页版机票数据 携程手机版机票数据添加代理 去哪儿网网页版机票数据 ...
- 去哪儿网网页版机票数据添加代理
目录 携程手机版国内机票数据 携程手机版国际机票数据 携程网页版国内机票数据 携程网页版国际机票数据 去哪儿网手机版机票数据 去哪儿网网页版机票数据 携程手机版机票数据添加代理 去哪儿网网页版机票数据 ...
- 利用selenium模拟自动登录链家、贝壳、安居客等网站(超级实用,推荐收藏!)
大家好, 今天跟大家分享一个利用selenium模拟自动登录王连某家.an聚客等网站. 文章内容超级实用,尽快在小本本上记录下来哟. 特别说明,以下代码仅用于交流学习,不做其他商业用途,切记切记! 上 ...
- python基础教程:Python如何基于selenium实现自动登录博客园
这篇文章主要介绍了Python如何基于selenium实现自动登录博客园,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 需要做的准备: 本文章是使用 ...
- python已打开页面获取信息_python+selenium实现自动登录网页获取信息(一)
我用的是一个教师继续教育的网站,进行演示和模拟,网站:http://cas.study.yanxiu.jsyxsq.com/auth/login?service=http%3A%2F%2Fwww.17 ...
- [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...
最新文章
- pytorch笔记:torch.nn.Threshold
- android开发,静音录制视频,在一般清晰度的前提下保证文件大小越小越好
- css初始化_利用CSS变量实现炫酷的悬浮效果
- [转]Android Activity和Intent机制学习笔记
- Java 8.if语句
- Veeam ONE v10.0.2.1094 安装教程+许可证
- 转:Kafka、RabbitMQ、RocketMQ消息中间件的对比 —— 消息发送性能 (阿里中间件团队博客)...
- hg255d php,HG255D刷潘多拉共享惠普1020打印机的问题汇总
- echarts-map的使用
- 计算机中丢失amtlib.dll如何办,amtlib.dll文件找不到怎么办-amtlib.dll文件找不到的解决办法...
- revel + swagger 文档也能互动啦
- 内存的分页管理(在4G内存下)
- Python爬虫:网易云音乐评论爬取
- 骗子、假先知们一夜暴富背后:区块链是回归互联网本来意义的唯一希望|深度
- ubuntu下打开nsg2的命令
- 手把手教你在Linux上上搭建BitTorrent服务器
- 14个同陌路人匿名聊天在线工具排除你的寂寞和无聊
- 面试题:堆、栈、队列的区别以及使用场景
- visio的使用技巧
- DQL数据查询语言--select的巧妙用法
热门文章
- html5,cxt.arc(100,100,30,0,Math.PI*2,true);
- mtk7620(斐讯K2)openwrt 18.06.1 固件 硬改 华邦winbond的W25Q256FV 32M spi flash
- 信息安全服务资质认证简介
- RTL8189FTV驱动交叉编译
- BZOJ 1651: [Usaco2006 Feb]Stall Reservations 专用牛棚
- 地铁传送网迈进OTN新时代
- 切蛋糕 爱丽丝梦游仙境,来到了疯帽子的茶会。茶会上有n只兔子,疯帽子作为绅士,今天专门为爱丽丝和兔子们准备了一个圆形的慕斯蛋糕,疯帽子要把这块蛋糕平均分给爱丽丝和兔子们(疯帽子自己不吃蛋糕)
- 三方对接时常用的加密方式
- excel表的单元格被锁定保护,单元格无法选择,忘记了解锁密码,解决办法
- FME及myfme最新安装包下载地址