当前位置:
首页 > Python基础教程 >
-
开发工具pycharm写第一个Python自动化程序案例
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yang520java/article/details/82733623
1、python开发工具pycharm到: https://www.jetbrains.com/pycharm/download/ 地址下载pycharm,最好下载免费社区版本的。
2、监测selenium环境
运行cmd,输入python,会进入到dos下的python环境,输入:
from seleniumimport webdriver
无任何的错误提示信息,表示selenium安装成功。打开pycharm,创建新的python工程,再接着创建demo.py的文件,输入如下的代码:
#coding:utf-8
from seleniumimport webdriver
driver=webdriver.Firefox() # python3.0需要添加相应浏览器驱动,火狐浏览器49版本+
driver.maximize_window() # 设置窗口大小
driver.implicitly_wait(30)
driver.get('http://www.baidu.com')
driver.find_element_by_id('kw').send_keys('seleniumhq')
driver.find_element_by_id('kw').click()
driver.quit()
输入完成后,右键,点击Run Demo,就会看到启动 firefox的浏览器进入到百度首页,在百度搜索输入框输入seleniumhq,然后点击搜索框,接着浏览器就会自动关闭。
如上的代码解释如下:
#coding:utf-8
防止乱码,在程序中统一添加注释,把编码统一成utf-8
from seleniumimport webdriver
导入selenium的webdriver的包,只有导入了webdriver,才可以更好的引用webdriver api进行自动化脚本的编写。
driver=webdriver.Firefox()
把需要控制的 webdriver的Firefox赋值给driver,只有获得对象后,才可以操作浏览器(firefox,chrome,ie等)。
driver.get('http://www.baidu.com')
获取浏览器对象后,调用get()向浏览器发送测试的地址。
driver.find_element_by_id('kw').send_keys('seleniumhq')
定位到页面元素后,通过id=kw定位到百度搜索输入框并且输入seleniumhq。
driver.quit()
退出并且关闭窗口。
3.Firebug的使用
打开firefox的浏览器,点击工具下拉栏的“附加组件”,在附加组件搜索输入框输入firebug,搜索到后,点击右边栏的安装,安装完成后,重新启动firefox的浏览器,就会在firefox的右上角显示firebug的图标,见截图:。点击该图标,浏览器下端就会显示调试的窗口,见截图:
点击,鼠标移动到百度搜索输入框,就可以看到如下的截图,会显示搜索输入框的ID等元素,见截图:
依据截图,我们可以获取到百度搜索输入框的id为kw
在chrome浏览器中,按下F12键,就会显示出调试界面,见截图:
点击移动到百度搜索输入框,就可以定位到百度搜索输入框的页面元素,见截图:
4. IE浏览器的操作
selenium操作ie的浏览器是无法操作的,需要通过driver才可以操作,google官方解释为:InternetExplorerDriver 是一个独立的服务器,实现 WebDriver 的有线协议。此驱动程序已经过测试与 IE 6、 7、 8、 9 和 XP、 Vista 和 Windows7 的适当组合 10。驱动程序支持运行 32 位和 64 位版本的浏览器。如何确定哪些"bit-ness"在启动浏览器中使用的选择取决于哪个版本的 IEDriverServer.exe 发起。如果启动时的 32 位版本的IEDriverServer.exe,32 位版本的 ie 浏览器将会启动。同样,如果推出的 64 位版本的IEDriverServer.exe,将推出的 64 位版本的 IE。下载IEDriverServer文件后,把该文件放到C:\Python27的目录下,就可以直接操作IE的浏览器了。见如下的代码:
#coding:utf-8
from selenium import webdriver
fromselenium.webdriver.common.desired_capabilities import DesiredCapabilities
DesiredCapabilities.INTERNETEXPLORER['ignoreProtectedModeSettings']= True
driver=webdriver.Ie()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('http://www.baidu.com')
driver.find_element_by_id('kw').send_keys('seleniumhq')
driver.find_element_by_id('kw').click()
driver.quit()
5.Chrome浏览器的操作
通过ChromeDriver就可以操作chrome, google官方的解释为:ChromeDriver 由三个独立部分组成。那里是浏览器本身 (chrome"),由selenum项目 ("the driver") 提供的语言绑定和可执行文件下载从chrome项目作为"chrome"和"the driver"之间的桥梁。此可执行文件被称为"chromedriver",但我们可以试着把它称作"服务器"在此页中以减少混乱。下载chromedriver后,把chromedriver文件放到C:\Python27的目录下,操作chrome的浏览器见如下的代码:
#coding:utf-8
from selenium import webdriver
driver=webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('http://www.baidu.com')
driver.find_element_by_id('kw').send_keys('seleniumhq')
driver.find_element_by_id('kw').click()
driver.quit()
————————————————
版权声明:本文为CSDN博主「魔都虫师Darcy_chen」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yang520java/article/details/82733623
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式