我有一个问题,关于如何基本上可以使用C#在Chrome Webdriver的任何页面上按Ctrl + s,我一直试图在过去两天中找到解决方案,但没有发现任何问题,并且仍在搜索中。如果有人帮助我。我要感谢那个人。 这是我编写的代码:
string CaptchaSrc = driver.FindElement(By.XPath("//img[@class='captchaImage']")).GetAttribute("src");
Thread.Sleep(2000);
driver.Navigate().GoToUrl(CaptchaSrc);
driver.FindElement(By.TagName("body")).SendKeys(OpenQA.Selenium.Keys.Control + '\u0053');
Actions action = new Actions(driver); char S = '\u0053'; action.SendKeys(System.Windows.Forms.Keys.Control + Convert.ToString(S)).Build().Perform();
Thread.Sleep(4000);
System.Windows.Forms.SendKeys.SendWait(@"C:\Users\Blue\Downloads\" + captchaNumbering.ToString());
System.Windows.Forms.SendKeys.SendWait(@"{Enter}");
我已经尝试了StackOverFlow上几乎所有存在的方法,甚至尝试了所有方法,但对我没有任何帮助。我只想在转到从互联网上抓取的Image的src-URL后按Control + S。
答案 0 :(得分:0)
也许您可以使用HTML Agility Pack保存页面或尝试
.SendKeys(Keys.Control + "a")
.SendKeys(Keys.Control + String.valueOf('\u0053'))
如果图片很逼真的,您可以使用此代码为例
string pagehtml = element.GetAttribute("innerHTML");
HtmlWeb page = new HtmlWeb();
HtmlDocument document = page.Load(pagehtml);
document.save("name.html");
我希望这个示例有效。我没有检查,但也许显示了搜索的方式。