selenium +chromdriver模块
1 selenium
模拟浏览器行为
2 chromdriver 对应的chrome浏览器驱动 下载地址

注意:chrome与chromdriver存在对应关系
以下错误就可能是版本不对应导致


简单的示例
131专用 此处指定的是2台不同电脑
"""
Description:网强自动登录脚本
Author:Nod
Date:18-05-03
Record:1 关键在于chrome的driver要与chrome的版本相对应
#---------------------------------v1-----------------------------------#
"""
from selenium import webdriver
import requests
import time
from selenium.webdriver.common.by import By #按照什么方式查找,By.ID,By.CSS_SELECTOR
from selenium.webdriver.common.keys import Keys #键盘按键操作
driver=webdriver.Chrome() #弹出浏览器
time.sleep(1)
driver.get('http://172.20.90.114:8080/StormWeb/')
time.sleep(1)
#将浏览器最大化操作
driver.maximize_window()
#获取输入用户名的地方
input_loginName=driver.find_element_by_id('loginName')
#清掉原先的内容
input_loginName.clear()
#输入用户名
input_loginName.send_keys('admin')
#获取密码
input_pwd=driver.find_element_by_id('pwd')
#输入密码
input_pwd.send_keys('nstrong')
#输入回车
input_pwd.send_keys(Keys.ENTER)
#等待8s 给浏览器解析时间
time.sleep(8)
#如果不需要打开拓扑就将下面一段代码注释
#driver.find_element_by_id('shutter4').click() #[0].click()
244专用
"""
Description:网强自动登录脚本
Author:Nod
Date:18-05-03
Record:1 关键在于chrome的driver要与chrome的版本相对应
#---------------------------------v1-----------------------------------#
"""
from selenium import webdriver
import requests
import time
from selenium.webdriver.common.by import By # 按照什么方式查找,By.ID,By.CSS_SELECTOR
from selenium.webdriver.common.keys import Keys # 键盘按键操作 driver = webdriver.Chrome() # 弹出浏览器
time.sleep(1)
driver.get('http://172.20.90.114:8080/StormWeb/')
time.sleep(1)
# 将浏览器最大化操作
driver.maximize_window()
# 获取输入用户名的地方
input_loginName = driver.find_element_by_id('loginName')
# 清掉原先的内容
input_loginName.clear()
# 输入用户名
input_loginName.send_keys('admin')
# 获取密码
input_pwd = driver.find_element_by_id('pwd')
# 输入密码
input_pwd.send_keys('nstrong')
# 输入回车
input_pwd.send_keys(Keys.ENTER)
# 等待8s 给浏览器解析时间
time.sleep(8)
# 打开拓扑
driver.find_element_by_id('shutter4').click() # [0].click()
现在有个情况;我个人坚持的观点是;Python程序写好了,但是客户机没有开发环境;简单的说就是没有开发环境;我们不能要求客户机新增python环境;
为了解决这一方法;我们常用pyinstaller打包工具
进行打包;pyinstaller的详细使用
那么针对此程序中需要调动chromdriver;我们之前默认是将chromdriver放在python安装目录的script下;基于此解决方法是,修改程序部分代码为
#driver = webdriver.Chrome(r'C:\chromedriver\chromedriver_x64.exe')
在c盘创建chromedriver并将驱动放进去;
最后执行pyinstaller打包;整个程序就能运行了;
经测试程序脚本已上线运行
selenium +chromdriver模块的更多相关文章
- python爬虫---单线程+多任务的异步协程,selenium爬虫模块的使用
python爬虫---单线程+多任务的异步协程,selenium爬虫模块的使用 一丶单线程+多任务的异步协程 特殊函数 # 如果一个函数的定义被async修饰后,则该函数就是一个特殊的函数 async ...
- selenium+chromdriver 动态网页的爬虫
# 获取加载更多的数据有 2 种方法# 第一种就是直接找数据接口, 点击'加载更多' 在Network看下, 直接找到数据接口 # 第二种方法就是使用selenium+chromdriver # se ...
- requests+selenium==requestium模块介绍
有时,你可能会在网上实现一些自动化操作.比如抓取网站,进行应用测试,或在网上填表,但又不想使用API,这时自动化就变得很必要.Python提供了非常优秀的Requests库可以辅助进行这些操作.可惜, ...
- selenium===splinter模块和selenium异曲同工
学习文档: http://splinter.readthedocs.io/en/latest/ 安装以后用它来实现163邮箱的登陆操作:*和selenium一样,splinter同样需要对frame进 ...
- selenium===requestium模块介绍
有时,你可能会在网上实现一些自动化操作.比如抓取网站,进行应用测试,或在网上填表,但又不想使用API,这时自动化就变得很必要.Python提供了非常优秀的Requests库可以辅助进行这些操作.可惜, ...
- 浏览器行为模拟之requests、selenium模块
requests模块 前言: 通常我们利用Python写一些WEB程序.webAPI部署在服务端,让客户端request,我们作为服务器端response数据: 但也可以反主为客利用Python的re ...
- 全程干货,requests模块与selenium框架详解
requests模块 前言: 通常我们利用Python写一些WEB程序.webAPI部署在服务端,让客户端request,我们作为服务器端response数据: 但也可以反主为客利用Python的re ...
- 用selenium 模块控制浏览器
11.8 用selenium 模块控制浏览器selenium 模块让Python 直接控制浏览器,实际点击链接,填写登录信息,几乎就像是有一个人类用户在与页面交互.与Requests 和Beautif ...
- selenium python (一) 开发环境搭建
1.工具下载: python工具共包括三个:python.setuptools.pip ² python:http://python.org/getit/ python开发环境: ² se ...
随机推荐
- django中的中间件
中间件介绍 什么是中间件? 官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子.它是一个轻量.低级别的插件系统,用于在全局范围内改变Django的输入和输出.每个中间件组件都负责 ...
- php 连接oracle 导出百万级数据
1,我们一般做导出的思路就是,根据我们想要的数据,全部查询出来,然后导出来,这个对数据量很大的时候会很慢,这里我提出来的思想就是分页和缓冲实现动态输出. 2.普通的我就不说了,下面我说一下分页和内存刷 ...
- jmeter工具应用1
1.Jmeter介绍 Apache JMeter 是Apache组织的开放源代码项目,是一个纯Java桌面应用,用于压力测试和性能测量.它最初被设计用于Web应用测试但后来扩展到其它测试领域. 操 ...
- Vue(二) 计算属性
模板内的表达式常用于简单的运算,当过长或逻辑复杂时,难以维护,计算属性就是解决该问题的 什么是计算属性 表达式如果过长,或逻辑更为复杂,就会变得臃肿甚至难以维护,比如: <div> {{ ...
- Linux每天一个命令:nc/ncat
nmap-ncat.x86_64版nc/ncat nc/ncat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了.你能建立一个服务器,传输文件,与朋友聊天,传输流媒 ...
- Python基础03_pycharm
pycharm的安装还是很简单的,一路next. 看起来Jet Brains 家的产品长相都差不多啊. 主要是create new project时,路径和解释器的选择,我电脑上有2.7和3.6 所以 ...
- 一分钟学会ConstraintLayout(转载)
原文地址:https://www.v2ex.com/t/287863 最近更新了Android Studio,突然发现xml中的布局已经变成了ConstraintLayout,于是搜了一篇文章看一下 ...
- css的性质
css两个性质: 1.继承性 2.层叠行(选择器的一种选择能力,谁的权重大就选谁) A.选不中,走继承性,(font系列.color.text系列)权重是0 a)有多个父级都设置了这样的样式 走就 ...
- html框架以及属性字体应用
今日java开课,下午老师讲解了java的第一节课,有关于html的框架,为了自己方便以后也会在日记中添加一些便签方便自己使用. 了解这一些之后老师发布的作业也让我对码代码有了更深的认知,码完作业之后 ...
- linux4.15.1编译init/mounts报错
AR init/mounts.o arm-linux-ar: illegal option -- T Usage: arm-linux-ar [emulation options] [-]{dmpqr ...