精华内容
下载资源
问答
  • 1. 因为最近想要将浏览器兼容...首先,从浏览器兼容的测试自动化开始,主要是Chrome和IE11,Chrome的版本更新很快,目前已经到chrome53了,IE相对慢很多了,一直在用IE11,但是IE11的小版本很多,也会导致很多兼容性...

    1. 因为最近想要将浏览器兼容的测试自动化,采用了python+selenium的方式。

    在C# + selenium + Nunit这条路上走了3个年头,如今转成python,几乎要重新设计框架。

    首先,从浏览器兼容的测试自动化开始,主要是Chrome和IE11,Chrome的版本更新很快,目前已经到chrome53了,IE相对慢很多了,一直在用IE11,但是IE11的小版本很多,也会导致很多兼容性的问题:

    1) 在chrome上显示正常的页面,在IE上显示得很奇怪,排版混乱等

    2) 在chrome上正常操作的功能,在IE上会出现不能操作的情况,而且,ie真的很慢。

    今天尝试启动IE浏览器,ie的driver还是用的比较老式的,2013年的。

    但是在启动过程中:

    driver = webdriver.Ie()

    出现了下面的错误:

    selenium.common.exceptions.WebDriverException: Message: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones.

    google了一下,找到了 虫师 的一篇文章:http://www.cnblogs.com/fnng/archive/2013/05/29/3106515.html

    需要配置IE的保护模式:将红框圈出来的4个,所有的“启用保护模式”,都勾掉或者都选上,一共4个,建议都勾选上。

    展开全文
  • python-IE浏览器调用

    2020-12-08 10:30:24
    IE浏览器驱动添加这里我的是IEDriverServer_Win32_2.43.0.zip,下载后解压,把IEDriverServer.exe放在python安装目录,与python.exe在同一目录下,即可调用.IE浏览器的调用#coding=utf-8from selenium import ...

    IE浏览器驱动添加

    这里我用的是IEDriverServer_Win32_2.43.0.zip,下载后解压,把IEDriverServer.exe放在python安装目录,与python.exe在同一目录下,即可调用.

    IE浏览器的调用

    #coding=utf-8

    from selenium import webdriver

    driver=webdriver.Ie()

    url='http://www.baidu.com'

    driver.get(url)

    driver.close()

    说明:

    1、【#coding=utf-8】为了防止乱码问题,以便在程序中添加中文注释,把编码统一为UTF-8,注意=两遍不要留空格,否则不起作用,另外【#_*_coding:utf-8_*_】的写法也可以达到相同的作用

    2、【from selenium import webdriver】该步骤是导入selenium的webdriver包,只有导入selenium包,我们才能使用webdriver API进行自动化脚本的开发

    3、【driver=webdriver.Ie()】这里将控制webdriver的Ie赋值给driver,通过driver获得浏览器操作对象,后就可以启动浏览器、打开网址、操作对应的页面元素了。

    若IEDriverServer.exe没有放在python安装目录下,而自定义的目录,如:IE目录下,则直接使用上述代码是无法调用成功的,提示:"IEDriver executable needs to be available in the path. "因为在默认的路径下,无法找到IEDriver,所以需要为webdriver指定指定IEDriver的路径,如下:

    #coding=utf-8

    from selenium import webdriver

    import os

    url='http://www.baidu.com'

    iedriver ='C:\IEDriverServer.exe' #iedriver路径

    os.environ["webdriver.ie.driver"] = iedriver #设置环境变量

    driver = webdriver.Ie(iedriver)

    driver.get(url)

    driver.close()

    说明:

    1、 os.environ["webdriver.ie.driver"]是设置IEDriver的环境变量,设置为实际的IEDriver地址即可。

    2、 若为chrom浏览器,则参数为:os.environ["webdriver.chrome.driver"]

    关于https网站调用失败处理

    上面介绍了,调用IE来打开对应的网页问题,但是在实际测试中,有些网站是采用https协议的,这时候IE浏览器会弹出如下窗口,一般手动选择后,才可进入登录界面,而在webdriver调用浏览器后,无法继续操作,那么该如何解决呢?

    方法一:代码增加配置

    首先,我们可以可以查看该网页的源码,分析下代码,可以看到下面部分信息:

    不推荐图标

    继续浏览此网站(不推荐)。

    述标记部分的,则是上图标记的地方,一般我们点击该图标后即可进入登录窗口,下面代码中通过调用javascript来操作浏览器的提示框,来跳过该提示即可:

    #coding=utf-8

    from selenium import webdriver

    driver=webdriver.Ie()

    firsturl='https://172.172.110.8/Terminal/logon.do'

    driver.get(firsturl)

    driver.get("javascript:document.getElementById('overridelink').click();")#解决IE提示问题

    driver.close()

    方法二:浏览器配置

    方法二则是通过配置浏览器的方法,解决证书问题,方法如下:

    1、点击【继续浏览此网页】后进入登录窗口,此时地址栏后面会出现【证书错误】提示

    2、点击证书错误——查看证书,提示证书无效,则是因为证书不被信息,需要安装证书

    3、弹出证书界面,选择安装证书

    4、按向导操作,注意在下列步骤中需要选择证书位置

    5、配置完成后,此时依然是无法登陆的,点击继续浏览后,弹出的错误提示为:不匹配的地址,如下,还需要继续配置

    6、Internnet选项——高级下,去除下图中标记项的勾,然后保存

    7、重新打开地址,此时仍然会弹出提示,选择继续浏览后,会发现上方的地址栏变为一个小锁,如右图,说明已经配置OK,后续在打开该地址就不会弹出错误选项了。

    8、若还是无法登陆,可以在Internet选项—安全中:设置安全等级为低等级,并在高级选项下,将下属五项全部勾选后重启浏览器即可

    关于调用IE浏览器的错误处理

    运行过程中如果出现错误:WebDriverException: Message: u'Unexpected error launching Internet Explorer.  Protected Mode settings are not the same for all zones. Enable Protected  Mode must be set to the same value (enabled or disabled) for all zones.

    解决方法

    更改IE的internet选项->安全,将Internet/本地Internet/受信任的站定/受限制的站点中的启用保护模式全部去掉勾,或者全部勾上

    参考资料

    [1] 证书错误 导航已阻止 无法跳转 最终解决,

    [2] webdriver+python 对三大浏览器的支持,

    展开全文
  • 启动IE浏览器即Selenium 调用IEDriverServer打开IE浏览器 ,因此需下载对应的IEDriverServer①下载IEDriverServer选择版本号,IEDriverServer的版本号和Selenium的版本号一定要一致,因为我选择的是selenium-3.0.1,...

    安装好python、selenium工具后,下一步就是启动浏览器

    1.启动IE浏览器

    即Selenium 调用IEDriverServer打开IE浏览器 ,因此需下载对应的IEDriverServer

    ①下载IEDriverServer 选择版本号,IEDriverServer的版本号和Selenium的版本号一定要一致,因为我选择的是selenium-3.0.1,所以IEDriverServer也选择的是3.0.1版本的。

    ② 解压缩得到IEDriverServer.exe,并将其添加到环境变量的目录下 (即 C:\python35)

    ③ 针对windows vista和windows 7上的IE7或者更高的版本,必须在IE选项设置的安全页中,4个区域的启用保护模式的勾选都去掉(或都勾上),即保持四个区域的保护模式是一致的。如下图所示:

    ④ 针对IE10和更高的版本,必须在IE选项设置中的高级页中,取消增强保护模式。如下图所示:

    ⑤浏览器的缩放比例必须设置为100%,这样元素定位才不会出现问题,如下图所示:

    ⑥针对IE11,需要修改注册表。(打开注册表的方式: win+r   regedit)

    如果是32位的windows,key值为

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet

    Explorer\Main\FeatureControl\FEATURE_BFCACHE

    ,如果是64位的windows,key值为

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet

    Explorer\Main\FeatureControl\FEATURE_BFCACHE

    如果key值不存在,就添加。之后在key内部创建一个iexplorer.exe,DWORD类型,值为0,我的windows是64位的,修改后的注册表如下图所示:

    之后Selenium就可以正常打开ie浏览器。

    附:检验IE是否正常启动的代码

    1 __author__ = 'admin' #作者

    2 #-*- coding:utf-8 -*- # 建议所有都加编码

    3

    4 from selenium import webdriver #导入webdriver包

    5

    6 driver = webdriver.Ie() #使用ie浏览器

    7 driver.get("http://www.baidu.com")8 driver.find_element_by_id("kw").send_keys("selenium")9 ####一个控件有若干属性id 、name、(也可以用其它方式定位),百度输入框的id 叫kw 我要在输入框里输入 selenium 。

    10 driver.find_element_by_id("su").click()11 ####搜索的按钮的id 叫su ,我需要点一下按钮( click() )。

    12 print(driver.title) #把页面title 打印出来 当没看到整个脚本执行过程时,看到打印出这句话,就说明页面被正确打开了

    13 driver.quit() #退出并关闭窗口的每一个相关的驱动程序 类似的表弟为 driver.close()

    14 #driver.close() #关闭当前窗口

    展开全文
  • python使用IE浏览器

    2021-11-26 22:52:31
    python代码启动IE: #coding=utf-8 from selenium import webdriver import os url='http://www.baidu.com' iedriver ='C:\IEDriverServer.exe' #iedriver路径 os.environ["webdriver.ie.driver"] = iedriv

    下载IEwebdriver地址:下载地址
    查看当前自己安装的selenium版本号下载对应的iewebdriver。
    pip list查看。

    python代码启动IE:

    #coding=utf-8
    from selenium import webdriver
    import os
    
    url='http://www.baidu.com'
    iedriver ='C:\IEDriverServer.exe' #iedriver路径
    os.environ["webdriver.ie.driver"] = iedriver #设置环境变量
    driver = webdriver.Ie(iedriver)
    driver.get(url)
    driver.close()
    
    展开全文
  • 用python打开IE浏览器

    千次阅读 2010-09-21 16:03:00
    import os #open the IE windows os.system('"C:/Program Files/Internet Explorer/iexplore.exe" about:blank') #open the defalut homepage os.system('"c:/program files/internet ...
  •  os.system('taskkill /F /IM iexplore.exe') #把ie浏览器杀掉  webbrowser.open_new('F:\\webapps\\haha\\iexplore1.lnk')   webbrowser.open_new('F:\\webapps\\haha\\iexplore2.lnk') #重启每个html文件,...
  • 1.下载IEDriverServer:... 2.下载成功后,指定ie驱动路径,运行代码 from selenium import webdriver from selenium.webdriver.common.desired_capabilities import Desired...
  • 这几天在学Python+selenium自动化,对三大浏览器Firefox,Chrome和IE都做了尝试,也都分别下载了对应的webdriver,如:geckodriver、chromedriver、IEDriverServer,并且把它们都放到python.exe的同级目录下,如下图:...
  • 前言:记录启动IE浏览器的报错及解决方法。错误1:selenium.common.exceptions.WebDriverException: Message: 'IEDriverServer.exe' executable needs to be in PATH. Please download from ...
  • 假如你要PAM30那就就得去下个Python 3.0安装.因为PAM30是运行在Python3.0环境上的2.假如你要2.6安装PAM.那就就得去下一个PAM2.0.原因如上3.假设以上两个环境条件你满足了其中一个.那么开始吧我是以PAM3.0&...
  • from selenium import webdriverimport timeimport jsonimport reimport randomfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support impo...
  • 这是正常的ie启动 ``` from selenium import webdriver driver = webdriver.Ie() url = "http://www.baidu.com" driver.get(url) input_sign = driver.find_element_by_id("kw") input_sign.send_keys(...
  • 在调用浏览器(firefox,chrome)能正常启动,但换成IE浏览器则会报如下错误: 解决方法如下: 1.在调用浏览器之前增加代码:截图中标注的两行代码     2.internet/本地intarnet/受信任的站点/...
  • IE浏览器调用IE浏览器驱动添加这里我的是IEDriverServer_Win32_2.43.0.zip,下载后解压,把IEDriverServer.exe放在python安装目录,与python.exe在同一目录下,即可调用.IE浏览器的调用#coding=utf-8from selenium...
  • pamie是个很好的操作IE的模块pamie来操作ie浏览器好方便啊,本来它就是一个IE测试自动化的东西,这样,pamie来抓取网页,自动提交表单很容易。使用:来测试一个最简单的例子:from cPAMIE import PAMIEie = ...
  • Python-Selenium是如何启动Internet Explorer浏览器的 Java-Selenium是如何启动Internet Explorer浏览器的 总结本机环境介绍Python版本(py3env) C:\Users\XXX\iCloudDrive\PycharmProjects\SAT>python -V Python ...
  • python+selenium启动ie浏览器后,登录系统,选择菜单后发现二级菜单无法被选中,二级菜单树一直闪,手工点了其中一个菜单后,还是闪,求大佬解答疑惑
  • selenium从2.0开始集成了webdriver的API,提供了更简单,更简洁的编程接口。selenium webdriver的目标是提供一个设计...第一步是打开浏览器使用webdriver.Chrome()打开谷歌浏览器,如果要指定其他浏览器,比如要使用...
  • 然后打开和关闭firefox/chrome浏览器,首先先去下载浏览器的插件【driver插件geckodriver.exe】,下载地址:https://github.com/mozilla/geckodriver/releases,下载好解压,将这个exe文件放到你安装python安装目录下...
  • 当脚本重新运行时,它将继续使用这个会话工作。还就是在做自动化测试时,前面做了一大推操作,但是由于程序出错,重启时不用再继续前面复杂的操作。个人觉得这种功能非常有用,但是官方居然没有提供这种功能的API,...
  • 安装好Python和Win32后,使用网上找到的例子来调用IE浏览器,却发现启动的是360浏览器。。。。。。import win32com.client, pythoncomtargetURL='http://baidu.com/'iewindow = win32com.client.DispatchEx('...
  • URL=pythoncom.Missing): print 'documentComplete of %s' %URL print self.value class H(Test,EventHandler): pass ie = win32com.client.DispatchWithEvents('InternetExplorer.Application',H) ie.Visible = 1 ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • D:\Develop\Python27\pythonw.exe D:/WorkSpace/Python/guo/guoPackage/guopy04_selenium.py Traceback (most recent call last):  File "D:/WorkSpace/Python/guo/guoPackage/guopy04_selenium.py", line 5, in
  • Python+Selenium基础篇之3-打开和关闭IE/Chrome浏览器

    万次阅读 多人点赞 2017-03-28 11:08:40
    前面文章介绍了,如何调用webdriver接口方法来打开和关闭Firefox浏览器,本文介绍如何打开IE和Chrome浏览器。web项目,需要做兼容性测试,最重要的是浏览器兼容性测试。如果只考虑windows平台,相信应该很多公司必须...
  • 安装Python3 1. 进入Python官方网站:https://www.python.org/downloads/下载并安装最新版本的Python(建议安装Python3) 。 下面是Python官网上几个版本的区别: (1).web-based installer 是需要通过联网完成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,085
精华内容 2,434
关键字:

怎么用python启动ie浏览器

python 订阅
友情链接: CadenceMaterial.rar