Python+Selenium笔记(一):环境配置+简单的例子
#环境配置基于windows操作系统
#学习selenium要有一些HTML和xpth的基础,完全不会的建议先花点时间学点基础(不然元素定位,特别是xpth可能看的有点懵)
#HTML : http://www.runoob.com/html/ #xpth: http://www.runoob.com/xpath
(一) 环境配置
(1)执行下面的命令(前提:已经安装python环境,可以参考之前发的python笔记(一))
pip install -U selenium
(2)http://docs.seleniumhq.org/download/ (网站打不开的话就FQ)
去下载Mozilla GeckoDriver(因为我暂时用火狐测试,所以下载这个),解压后放到任意目录下,然后在系统变量path中加上解压后的路径(我在2台电脑上试了下,一个放在任意目录,一个放到python的安装目录,反正都能用。)
(3)之后如果创建浏览器驱动实例还是报错的话(可能是浏览器版本的问题,我python3.6+selenium3.9+火狐47+Mozilla GeckoDriverV0.19.1就报错,火狐换成58就不会了)
(二) 简单的例子
#导入webdriver
from selenium import webdriver
#FirefoxBinary--导入2进制文件所在的位置
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
#指定火狐浏览器的二进制路径
firefox = FirefoxBinary(r"C:\Program Files (x86)\Mozilla
Firefox\firefox.exe")
driver = webdriver.Firefox(firefox_binary=firefox) #创建火狐浏览器的驱动实例
driver.implicitly_wait(2)
#设置等待时间(定义执行步骤的超时时间)
driver.maximize_window() #最大化浏览器
driver.get("https://www.cnblogs.com/") #打开博客园首页
search_field =
driver.find_element_by_id('zzk_q') #通过id定位博客园首页的搜索框
search_btn
=driver.find_element_by_class_name('search_btn') #通过class定位博客园首页的查询按钮
search_field.clear() #清空搜索框的值(如果有)
search_field.send_keys("python") #在搜索框中输入查询条件
search_btn.click() #点击查询按钮
# search_field.submit()
#选取<h3><a>开始 ,</a>结束之间的值,返回一个列表
products =
driver.find_elements_by_xpath('//h3[a/@target="_blank"]/a')
#迭代列表products,输出text的值
for p in products:
print(p.text)
#选取<a target="_blank">节点的值,返回一个列表
pro =
driver.find_elements_by_xpath('//h3/a[@target="_blank"]')
#迭代输出href属性的值
for p in pro:
print(p.get_attribute('href'))
#关闭浏览器
driver.quit()
(三) 输出如下

第二步骤中的xpth其实主要定位的就是下面这些

Python+Selenium笔记(一):环境配置+简单的例子的更多相关文章
- Python+Selenium安装及环境配置
一.Python安装 Window系统下,python的安装很简单.访问python.org/download,下载最新版本,安装过程与其他windows软件类似.记得下载后设置path环境变量,然后 ...
- python + selenium WebDriver的环境配置
想试用python语言来学习selenium WebDriver,首先需要搭建一个测试环境,从python安装到浏览器插件配置的详细步骤,总结如下: 一.python环境配置 1.从官网下载最新的一个 ...
- python +selenium +chrome/firefox 环境配置
http://ftp.mozilla.org/pub/firefox/releases/ 各firefox版本下载地址 http://ftp.mozilla.org/pub/firefox/relea ...
- Python Virtualenv运行Django环境配置
系统: RHEL6.5 版本说明: Python-3.5.0 Django-1.10.4 virtualenv:为每个项目建立不同的/独立的Python环境,你将为每个项目安装所有需要的软件包到它们各 ...
- selenium 安装与环境配置
selenium的安装 环境配置:python2.7+selenium2+Firefox46以下版本 本次安装环境:python2.7.13+selenium2.53.6+Firefox46 官网下载 ...
- python+selenium之自定义封装一个简单的Log类
python+selenium之自定义封装一个简单的Log类 一. 问题分析: 我们需要封装一个简单的日志类,主要有以下内容: 1. 生成的日志文件格式是 年月日时分秒.log 2. 生成的xxx.l ...
- Qt5学习笔记(1)-环境配置(win+64bit+VS2013)
Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...
- Python+Selenium笔记(十一):配置selenium Grid
(一) 前言 Selenium Grid可以将测试分布在若干个物理或虚拟机器上,从而实现分布方式或并行方式执行测试. 这个链接是官方的相关说明. https://github.com/Selenium ...
- scrapy爬虫笔记(一)------环境配置
前言: 本系列文章是对爬虫的简单介绍,以及教你如何用简单的方法爬取网站上的内容. 需要阅读者对html语言及python语言有基本的了解. (本系列文章也是我在学习爬虫过程中的学习笔记,随着学习的深入 ...
随机推荐
- 数据库设计 Step by Step (1)——扬帆启航
引言:一直在从事数据库开发和设计工作,也看了一些书籍,算是略有心得.很久之前就想针 对关系数据库设计进行整理.总结,但因为种种原因迟迟没有动手,主要还是惰性使然.今天也算是痛下决心开始这项卓绝又令我兴 ...
- [Java初探外篇]__关于时间复杂度与空间复杂度
前言 我们在前面的排序算法的学习中了解到了,排序算法的分类,效率的比较所使用到的判断标准,就包括时间复杂度和空间复杂度,当时因为这两个定义还是比较难以理解的,所以决定单独开一篇文章,记录一下学习的过程 ...
- 在linux下实现mysql自动备份数据
使用的系统为CentOS,mysql版本为5.6 备份功能主要利用以下功能实现: mysql命令中的mysqldump命令 linux下脚本编写 linux下crontab定时任务的使用 首先确定你要 ...
- MVC源码分析 - Error过滤器
接 上一篇 内容, 这里先看一下错误处理过滤器. 在看此部分之前, 先看看MVC已经提供的功能吧. 一. MVC 自带功能 1. 配置方法 <system.web> <!--mode ...
- Code First, Database First, Same Time区别
Code First, Database First, Same Time是我理解的asp.net mvc中用到的三种model与数据库对应的方式,肯定是不全面的,理解也有些狭隘,今后随着自己的理解加 ...
- UVa 10129 Play on Words(并查集+欧拉路径)
题目链接: https://cn.vjudge.net/problem/UVA-10129 Some of the secret doors contain a very interesting wo ...
- NYOJ 1013 除法表达式(欧几里德算法+唯一分解定理)
题目链接: http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=1013 描述 给出一个这样的除法表达式:X1/X2/X3/···/Xk,其中Xi是 ...
- zoj Beautiful Number(打表)
题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2829 题目描述: Mike is very lucky, as ...
- 【Leetcode】292. Nim游戏
题目链接:https://leetcode-cn.com/problems/nim-game/description/ 您和您的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 ...
- 【虚拟机ubuntu设置ssh】ssh连不上问题解决方法
首先,确保server端的ssh服务是开的(service shhd start) 然后在client端输入: ssh usrname@serverip (远程登录) scp filename usr ...