1
我试图用awesomium登录到https://accounts.google.com,但在单击下一个按钮后设置密码字段时出错。如何在C#中使用awesomium登录谷歌帐户.net
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading;
using Awesomium.Core;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
var session = WebCore.CreateWebSession(new WebPreferences { WebSecurity = false });
using (WebView webViewBrowser = WebCore.CreateWebView(1024, 768, session, WebViewType.Offscreen))
{
webViewBrowser.ConsoleMessage += webViewBrowser_ConsoleMessage;
webViewBrowser.LoadingFrameComplete += webViewBrowser_LoadingFrameComplete;
webViewBrowser.Source = new Uri("http://www.blogger.com/");
if (WebCore.UpdateState == WebCoreUpdateState.NotUpdating) WebCore.Run();
Console.ReadKey();
}
}
static void webViewBrowser_ConsoleMessage(object sender, ConsoleMessageEventArgs e)
{
Debug.Print("{0} at {1}: {2} at '{3}'", e.EventName, e.LineNumber, e.Message, e.Source);
}
static void webViewBrowser_LoadingFrameComplete(object sender, FrameEventArgs e)
{
if (!e.IsMainFrame) return;
WebView webViewBrowser = sender as WebView;
Console.WriteLine(String.Format("Page Title: {0}", webViewBrowser.Title));
Console.WriteLine(String.Format("Loaded URL: {0}", webViewBrowser.Source));
dynamic Email = (JSObject)webViewBrowser.ExecuteJavascriptWithResult("document.getElementById('Email');");
Email["value"] = "[email protected]";
dynamic btn = (JSObject)webViewBrowser.ExecuteJavascriptWithResult("document.getElementById('next');");
btn.click();
dynamic Passwd = (JSObject)webViewBrowser.ExecuteJavascriptWithResult("document.getElementById('Passwd');");
Passwd["value"] = "pass007";
btn = (JSObject)webViewBrowser.ExecuteJavascriptWithResult("document.getElementById('signIn');");
btn.click();
BitmapSurface surface = (BitmapSurface)webViewBrowser.Surface;
surface.SaveToPNG("result.png", true);
WebCore.Shutdown();
}
}
}
上线的passwd [ “值”] = “pass007” 异常;:
'System.InvalidOperationException' 类型的异常出现在 Awesomium.Core.dll但在没有处理用户代码
附加信息:不能对 无效(未定义)对象执行此操作。