安装 selenium 对于python而言属于一个第三方的模块
针对第三方的模块,如何安装 在dos界面输入python -m pip install 模块名称
安装相关的浏览器以及浏览器的驱动
下载谷歌浏览器的驱动,淘宝镜像
下载后,解压,然后将得到的exe文件移动到python安装目录
测试是否安装成功

定位
提供了八种定位方式
|
定位方式 |
表达式 |
|
id |
find_element_by_id |
|
name |
find_element_by_name |
|
class_name |
find_element_by_class_name |
|
link_text |
find_element_by_link_text |
|
partial_link_text |
find_element_by_partial_link_text |
|
tag_name |
find_element_by_tag_name |
|
xpath |
find_element_by_xpath |
|
css_selector |
find_element_by_css_selector |
- 打开网页get()
- 输入 send_keys()
- 清空clear()
- 点击click()
id,name,class_name使用demo
# 使用selenium之前,需要先从selenium 里面导入 webdriverfrom selenium import webdriver from time import sleep # 打开谷歌浏览器,并且赋值给变量dd = webdriver.Chrome()# 通过 get(url) 方法打开网址d.get('http://localhost/wordpress/wp-login.php')# 通过id定位# 通过send_keys()方法输入内容d.find_element_by_id('user_login').send_keys('随便写写') sleep(2)# 通过name定位# 通过clear()方法,清空输入框的内容d.find_element_by_name('log').clear() sleep(2)# 通过class_name定位d.find_element_by_class_name('input').send_keys('admin')# 通过click()方法模拟鼠标单击d.find_element_by_class_name('button-primary').click()
tag_name,link_text,partial_link_text使用demo
# 使用selenium之前,需要先从selenium 里面导入 webdriverfrom selenium import webdriver from time import sleep # 打开谷歌浏览器,并且赋值给变量dd = webdriver.Chrome()# 通过 get(url) 方法打开网址d.get('http://localhost/wordpress/wp-login.php')# 通过tag_name定位d.find_element_by_tag_name('input').send_keys('tagname定位') sleep(2)# 通过link_text定位,需要全部的文本链接d.find_element_by_link_text('忘记密码?').click() sleep(2)# 通过partial_link_text 定位,只需要某一部分文本即可d.find_element_by_partial_link_text('回到自').click() sleep(2)
xpath定位
# 绝对路径定位 /html/body/div/form/p/label # 通过序号选择,获取到form标签下的第二个p标签 /html/body/div/form/p[2]/label # 直接查找某个标签下 //标签名 //form/p[2]/label # 属性与路径结合起来 //form/p/label[@for="user_pass"] //input[@class="input" and @type="password"] //p/label[@for="user_pass"]/input //label[@for="user_login"]/input
css定位
用空格表示下级标签 [属性名="属性值"][属性名="属性值"] //input[@class="input" and @type="password"] input[class="input"][type="password"] input.input[type="password"] 用 # 表示 id [id="user_login"] 等于 #user_login 用 . 表示 class [class="input"] 等于 .input
代码demo
# 使用selenium之前,需要先从selenium 里面导入 webdriverfrom selenium import webdriver from time import sleep # 打开谷歌浏览器,并且赋值给变量dd = webdriver.Chrome()# 通过 get(url) 方法打开网址d.get('http://localhost/wordpress/wp-login.php')# xpath定位d.find_element_by_xpath('//label[@for="user_login"]/input').send_keys('admin')# css定位d.find_element_by_css_selector('#user_pass').send_keys('admin123') d.find_element_by_css_selector('.button-primary').click()
安装 selenium 对于python而言属于一个第三方的模块的更多相关文章
- selenium,phantomJS,python整合的一个小示例,把某个网页画面整体保存成图片格式。
本篇将使用selenium,phantomJS和python制作的一个示例,把某个网页整体保存为一个图片文件. 简单介绍下,selenium是一个开源的用于测试web程序的工具,当然,如果你要执行一些 ...
- 在Window平台下安装xgboost的Python版本
原文:http://blog.csdn.net/pengyulong/article/details/50515916 原文修改了两个地方才安装成功,第3步可以不用,第2步重新生成所有的就行了. 第4 ...
- Python基础笔记系列十:模块
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 模块 #1.类比于java中的jar包,模块能让你能够有逻辑地组织你的Py ...
- python 并发编程 协程 gevent模块
一 gevent模块 gevent应用场景: 单线程下,多个任务,io密集型程序 安装 pip3 install gevent Gevent 是一个第三方库,可以轻松通过gevent实现并发同步或异步 ...
- Python库:序列化和反序列化模块pickle介绍
1 前言 在“通过简单示例来理解什么是机器学习”这篇文章里提到了pickle库的使用,本文来做进一步的阐述. 通过简单示例来理解什么是机器学习 pickle是python语言的一个标准模块,安装pyt ...
- 为采集动态网页安装和测试Python Selenium库
1. 引言上一篇<为编写网络爬虫程序安装Python3.5>中测试小例子对静态网页做了一个简单的采集程序,而动态网页因为需要动态加载js获取数据,所以使用urllib直接openurl已经 ...
- python安装selenium和下载浏览器驱动
1.安装selenium 方法一:可以用在cmd中用pip命令安装. python默认自带pip工具,如果在电脑上配置了pip的环境变量,打开cmd命令窗口后可以直接输入命令pip insta ...
- 自动化测试的Selenium的python版安装与使用
Selenium是专做网页自动化测试的,即web drive,通过百度Selenium就能找到Selenium的官网 由图可见,selenium支持相当多的编程语言进行网页自动化测试,这里我们使用py ...
- Python----Anaconda + PyCharm + Python 开发环境搭建(使用pip,安装selenium,使用IDLE)
1.Python开发中会用到的工具下载地址 FireBug插件安装地址:https://addons.mozilla.org/en-US/firefox/addon/firebug/ FirePath ...
随机推荐
- pandas再次学习
numpy.scipy官方文档 pandas官方网站 matplotlib官方文档 一.数据结构 二.数据处理 1.数据获取(excel文件数据基本信息) #coding=utf-8 import ...
- docker容器与主机之间的文件复制
Easy—— 注意:“容器名与文件路径中间的冒号后不能有空格!” 1.从容器复制到主机: sudo docker cp 容器名:文件路径 主机文件/夹路径 2.从主机复制复制到容器: sudo doc ...
- egit报错:cannot open git-upload-pack
第一次通过eclipse导入github 项目,按照百度步骤进行操作,发现不能连接 github,cannot open git-upload-pack. 报错原因通过 eclipse 日志排查报错 ...
- Geoserver 跨域设置
1.下载跨域jar包jetty-servlets.jar(下载geoserver使用的对应jetty版本——可以查看<Geoserver>\lib下jetty-servlet.jar的版本 ...
- Linux 中ifconfig和ip addr命令看不到ip
解决方案: 输入 vi /etc/sysconfig/network-scripts/ifcfg-ens33 将ONBOOT权限改为yes 保存退出,按Esc,输入:wq 重启网络服务,输入 sudo ...
- c# 获取网页的爬虫程序
转载于:https://www.cnblogs.com/wzk153/p/9145684.html HtmlAgilityPack相关详解: https://www.cnblogs.com/asxin ...
- 2.7_Database Interface OLE-DB诞生
ODBC仅支持关系数据库,以及传统的数据库类型,并且只以C/C++语言API(API就是一些C语言的代码,是最底层的程序,在windows中就是一些.dll的文件)形式提供服务,因而无法符合日渐复杂的 ...
- js 使用 "use strict"
"use strict"是JavaScript中一个非常好的特性,而且非常容易使用. 使用方法 // file.js "use strict" function ...
- echart 人头
<template> <div :class="className"> <div :id="id" class="spi ...
- xcode 手动管理内存 的相关知识点总结
一.XCode4.2以后支持自动释放内存ARC xcode自4.2以后就支持自动释放内存了,但有时我们还是想手动管理内存,这如何处理呢. 很简单,想要取消自动释放,只要在 Build Setting ...