浏览器自动化的一些体会7 selenium webdriver的一些问题

1. 下载图片

这个链接说得最好,差不多所有可能的方法都列举了,除了没有提到用URLDownloadToFile,不过这和用WebClient差不多。

https://stackoverflow.com/questions/18424624/using-selenium-to-save-images-from-page/48871283

2. 完全退出selenium

一般情况下,用webdriver的Quit方法就可以了。但是某些情况下,也有可能没用。这时,就只能杀进程了。

有意思的是,IEWebDriver和ChromeWebDriver杀进程的方式还不一样。IE这样就行了:

            foreach (Process ps in Process.GetProcessesByName("IEDriverServer"))
            {
                ps.Kill();
            }

但是这个方法对于ChromeWebDriver不适用,上面的代码执行后,从进程列表里找不到chromedriver,但是窗口依然显示。

经试验,下面链接里aalhanane的回答work,缺点是执行时间较长:

https://stackoverflow.com/questions/21320837/release-selenium-chromedriver-exe-from-memory/21320949

原文地址:https://www.cnblogs.com/badnumber/p/8454760.html

时间: 2024-10-15 11:16:32

浏览器自动化的一些体会7 selenium webdriver的一些问题的相关文章

浏览器自动化的一些体会2 webBrowser控件之ajax

上个帖子简要讨论了浏览器自动化的几种方法.现在讨论webBrowser控件使用中的一些问题.基本的操作就不详细说了,随便网上找个帖子或找本书都有介绍的.这里只写点网上似乎少有人总结过的内容,以及自己的一些实践体会. 1.ajax 首先,DocumentCompleted事件对于ajax无能为力,因为这个事件不能处理网页加载完成后执行javascript发出ajax请求.网上可以找到的方法,主要有两种,一种是利用onpropertychange事件,随便找了个参考链接:https://social

浏览器自动化的一些体会10 稳定性的零星体会

浏览器自动化程序,感觉最难的就是稳定性.要实现无人值守自动执行,特别是在网络不太好的情况下连续不停顿正常运行8小时或更长时间,是不太容易的.因为很多异常情况难以预料.做好以下几点有帮助: 1)如果是在visual studio下调试,应该把Debug - Exceptions - Managed Debugging Assistants - ContextSwitchDeadLock 的Thrown的打勾去掉,这样可以避免运行到一半,突然出现一个提示,中断程序的执行. 2)如果是用webBrow

浏览器自动化的一些体会4 webBrowser控件之零碎问题2

1. DocumentCompleted的多次执行问题 有的网页,会多次触发DocumentCompleted事件,由于它是异步的,不会阻塞,所以如果不恰当处理,会造成某些代码被错误地多次执行,造成意想不到的结果. 我一般的做法,是定义一个全局变量(winform里form的成员变量),如下面代码所示: private string _type; private void button1_Click(object sender, EventArgs e) { _type = "test"

浏览器自动化的一些体会11 webclient的异步操作

原来的代码大致如下: private void foo(string url) { using (WebClient client = new WebClient()) { client.DownloadProgressChanged += (obj, ev) => { client.CancelAsync(); }; client.DownloadStringCompleted += (obj, ev) => { ................ Thread.Sleep(30000); b

Selenium Webdriver重新使用已打开的浏览器实例

本文中的样例均使用SoapUI ,关于SoapUI+Webdriver 的配置,请看上一篇: http://blog.csdn.net/wwwqjpcom/article/details/51174664 我弄这个的本意是为了在SoapUI中更好地编写自动化用例,因为我的业务流程有的很长,有7-8个页面. 我想把代码不集中在一个Groovy 脚本里,想在第二个脚本中继续使用第一个脚本中打开的浏览器.这样便于 维护和定位问题. 也还有一种情况是我打开了浏览器,,操作了系统到某一个界面后,我写了这个

Java+selenium+Firefox/ IE/ Chrome主流浏览器自动化环境搭建

一.java+selenium+firefox 1.环境准备:JDK1.8 2.安装firefox浏览器v59 3.下载驱动:https://github.com/mozilla/geckodriver/releases 4.selenium依赖pom.xml导入:https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java selenium 历史版本镜像下载地址:https://npm.taobao.org/m

selenium webdriver处理浏览器Cookie

有时候我们需要验证浏览器中是否存在某个cookie,因为基于真实的cookie 的测试是无法通过白盒和集成测试完成的.WebDriver 提供了操作Cookie 的相关方法可以读取.添加和删除cookie 信息.WebDriver 操作cookie 的方法有:? getCookies() 获得所有cookie 信息? addCookie(cookie_dict) 添加cookie,必须有name 和value 值? deleteAllCookies() 删除所有cookie 信息? delete

Selenium WebDriver使用IE浏览器(转)

转自:http://smilejay.com/2012/09/selenium-webdriver-with-ie/ 如下的Java代码是打开IE浏览器,然后在Google中搜索“smilejay”关键字. [Copy to clipboard] JAVA 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 package com.sele

[乐意黎原创] 使用Selenium webdriver+Firefox浏览器来登录新浪微博

有个需求测试,需要用webdriver 登录到新浪微博,由于个人比较善长 Webdriver,于是采取了Webdriver+FireFox来实现. 配置环境 a. 必须首先在Eclipse里加载 selenium webdriver 包[[此处我导入的是 selenium-server-standalone-2.45.0.jar] b. 以及安装了 firefox 浏览器. 此篇文章中我用了本人的新浪微博地址来做测试,大家 可以更换为自己的新浪微博帐号和密码. 文中为部分主要的Java 代码.