c# selenium 自动化Chrome 浏览器
2018-01-19 14:00
316 查看
本人下载 2.34 chrome 驱动对应 chrome 61版本号。
private static IWebDriver CreateChromeDriver()
{
try
{
var service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true; //隐藏 命令窗口
String proxyIpAndPort = Proxy;
Proxy proxy = new Proxy();
proxy.HttpProxy = proxyIpAndPort;
proxy.SslProxy = proxyIpAndPort;
proxy.FtpProxy = proxyIpAndPort;
proxy.IsAutoDetect = false;
//proxy.NoProxy = "None";
var option = new ChromeOptions();
option.Proxy = proxy;
//option.AddArgument("disable-infobars"); //隐藏 自动化标题
//option.AddArgument("headless"); //隐藏 chorme浏览器
option.AddArgument("--incognito");//隐身模式
//option.AddArgument("--user-data-dir=C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\User Data");
var driver = new ChromeDriver(service, option, TimeSpan.FromSeconds(40));
try
{
}
catch (Exception ex)
{
driver.Close(); driver.Dispose();
}
return driver;
}
catch (Exception ex)
{
}
return null;
}添加 cookie foreach (string c in acc.cookie.Split(';'))
{
//cookies.AddCookie(new OpenQA.Selenium.Cookie(HttpUtility.UrlEncode(cc[0]).Replace("+", ""), HttpUtility.UrlEncode(cc[1]), uri.DnsSafeHost, "/", DateTime.Now.AddYears(1)));
string[] cc = c.Split('=');
if (cc.Length == 2)//uri.DnsSafeHost
{
cookies.AddCookie(new OpenQA.Selenium.Cookie(HttpUtility.UrlEncode(cc[0]).Replace("+", ""), HttpUtility.UrlEncode(cc[1]), uri.DnsSafeHost, "/", DateTime.Now.AddYears(1)));
}
else if (c.Contains("PREF"))
{
cc[1] = cc[1] + "=" + cc[2] + "&f5=30";
cookies.AddCookie(new OpenQA.Selenium.Cookie(HttpUtility.UrlEncode(cc[0]).Replace("+", ""), HttpUtility.UrlEncode(cc[1]), uri.DnsSafeHost, "/", DateTime.Now.AddYears(1)));
}
}
nav.Refresh();
发送 上传文件 var input=driver.FindElements(By.XPath("//input[@type='file']"));
foreach(var btn in input)
{
if (btn.Size.Width > 2000)
{
btn.SendKeys(@"D:\test1.mp4");
}
}
private static IWebDriver CreateChromeDriver()
{
try
{
var service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true; //隐藏 命令窗口
String proxyIpAndPort = Proxy;
Proxy proxy = new Proxy();
proxy.HttpProxy = proxyIpAndPort;
proxy.SslProxy = proxyIpAndPort;
proxy.FtpProxy = proxyIpAndPort;
proxy.IsAutoDetect = false;
//proxy.NoProxy = "None";
var option = new ChromeOptions();
option.Proxy = proxy;
//option.AddArgument("disable-infobars"); //隐藏 自动化标题
//option.AddArgument("headless"); //隐藏 chorme浏览器
option.AddArgument("--incognito");//隐身模式
//option.AddArgument("--user-data-dir=C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\User Data");
var driver = new ChromeDriver(service, option, TimeSpan.FromSeconds(40));
try
{
}
catch (Exception ex)
{
driver.Close(); driver.Dispose();
}
return driver;
}
catch (Exception ex)
{
}
return null;
}添加 cookie foreach (string c in acc.cookie.Split(';'))
{
//cookies.AddCookie(new OpenQA.Selenium.Cookie(HttpUtility.UrlEncode(cc[0]).Replace("+", ""), HttpUtility.UrlEncode(cc[1]), uri.DnsSafeHost, "/", DateTime.Now.AddYears(1)));
string[] cc = c.Split('=');
if (cc.Length == 2)//uri.DnsSafeHost
{
cookies.AddCookie(new OpenQA.Selenium.Cookie(HttpUtility.UrlEncode(cc[0]).Replace("+", ""), HttpUtility.UrlEncode(cc[1]), uri.DnsSafeHost, "/", DateTime.Now.AddYears(1)));
}
else if (c.Contains("PREF"))
{
cc[1] = cc[1] + "=" + cc[2] + "&f5=30";
cookies.AddCookie(new OpenQA.Selenium.Cookie(HttpUtility.UrlEncode(cc[0]).Replace("+", ""), HttpUtility.UrlEncode(cc[1]), uri.DnsSafeHost, "/", DateTime.Now.AddYears(1)));
}
}
nav.Refresh();
发送 上传文件 var input=driver.FindElements(By.XPath("//input[@type='file']"));
foreach(var btn in input)
{
if (btn.Size.Width > 2000)
{
btn.SendKeys(@"D:\test1.mp4");
}
}
相关文章推荐
- Selenium2学习-005-WebUI自动化实战实例-003-三种浏览器(Chrome、Firefox、IE)启动脚本源代码
- Selenium2学习-006-WebUI自动化实战实例-004-解决 Chrome 浏览器证书提示:--ignore-certificate-errors
- web自动化_浏览器驱动chromedriver安装方法(适用RF框架/Selenium/Appium)
- selenium+python自动化86-Chrome正在受到自动软件的控制
- 模拟浏览器自动化测试工具Selenium之六设置代理篇
- selenium的截图功能只能在浏览器“*Chrome”、“*Firefox”
- [Selenium] 如何在老版本的Chrome 浏览器上使用selenium
- Selenium2学习-024-WebUI自动化实战实例-022-网站不同分辨率下页面样式展示兼容性问题解决方案 -- 设置浏览器显示区域大小(无人值守,节约测试成本的福音,BOSS 最爱)
- Python+Selenium 自动化测试浏览器窗口最大化报错
- python+selenium 自动化之启动浏览器加载浏览器的插件
- python+chrome+Selenium模拟手机浏览器
- 构建Python+Selenium2自动化测试环境<二>:IE、Chrome和Firefox运行
- python中selenium结合chrome操作浏览器,并解决chrome与chromedriver版本不匹配问题
- selenium IE11自动化打开浏览器报错
- python+selenium自动化不打开浏览器测试
- c# Selenium使用ChromeOption禁用图片
- selenium2+python如何启动Ie和Chrome进行自动化测试
- selenium2+python自动化1-操作浏览器
- 模拟浏览器自动化测试工具Selenium之一eclipse集成开发部署篇
- [Selenium] 如何使用Chrome Options 定制测试Chrome 浏览器的特定属性 (类似FirefoxProfiles)