想用WebBrowser控件实现登陆CSDN论坛并得到论坛栏目名称,有图请教!
对WebBrwoser控件的使用一直很迷茫所以想以csdn网页为例请教一下使用方法。
第一步:首先打开csdn主页。
第二步:点击论坛,再点登录。
第三步:在登录页面输入用户名及密码(如名:lovecsdn,密码:888888),将两周内自动登录选中,点登录。
第四步:在登录后的网页上我要取得所有红框内论坛栏目名称。
我想用WebBrowser控件实现以上四步(按下一次按钮键自动实现),该如何做?
可能有些麻烦,但急需掌握这方面的知识,求教了。
[解决办法]
Navigate+Document.Write
[解决办法]
直接取WebBrowser.document对象即可!
[解决办法]
1. 过多的计划会影响人生享受. 完全不正确 <input name="p1" type="radio" value="1" /> <input name="p1" type="radio" value="2" /> <input name="p1" type="radio" value="3" /> <input name="p1" type="radio" value="4" /> <input name="p1" type="radio" value="5" /> 非常正确
2. 不管人家怎么对待我,我对人都很友善. 完全不正确 <input name="p2" type="radio" value="1" /> <input name="p2" type="radio" value="2" /> <input name="p2" type="radio" value="3" /> <input name="p2" type="radio" value="4" /> <input name="p2" type="radio" value="5" /> 非常正确
3. 我不是一个冒险的人. 完全不正确 <input name="p3" type="radio" value="1" /> <input name="p3" type="radio" value="2" /> <input name="p3" type="radio" value="3" /> <input name="p3" type="radio" value="4" /> <input name="p3" type="radio" value="5" /> 非常正确
4. 我是一个害羞的人. 完全不正确 <input name="p4" type="radio" value="1" /> <input name="p4" type="radio" value="2" /> <input name="p4" type="radio" value="3" /> <input name="p4" type="radio" value="4" /> <input name="p4" type="radio" value="5" /> 非常正确
5. 当压力很大的时候,我很难保持冷静. 完全不正确 <input name="p5" type="radio" value="1" /> <input name="p5" type="radio" value="2" /> <input name="p5" type="radio" value="3" /> <input name="p5" type="radio" value="4" /> <input name="p5" type="radio" value="5" /> 非常正确
6. 我在集体工作中表现最好. 完全不正确 <input name="p6" type="radio" value="1" /> <input name="p6" type="radio" value="2" /> <input name="p6" type="radio" value="3" /> <input name="p6" type="radio" value="4" /> <input name="p6" type="radio" value="5" /> 非常正确
7. 我从来没有故意説过谎. 完全不正确 <input name="p7" type="radio" value="1" /> <input name="p7" type="radio" value="2" /> <input name="p7" type="radio" value="3" /> <input name="p7" type="radio" value="4" /> <input name="p7" type="radio" value="5" /> 非常正确
8. 我一向完全彻底地完成我的工作. 完全不正确 <input name="p8" type="radio" value="1" /> <input name="p8" type="radio" value="2" /> <input name="p8" type="radio" value="3" /> <input name="p8" type="radio" value="4" /> <input name="p8" type="radio" value="5" /> 非常正确
9. 我有时候会无意中对别人很无礼. 完全不正确 <input name="p9" type="radio" value="1" /> <input name="p9" type="radio" value="2" /> <input name="p9" type="radio" value="3" /> <input name="p9" type="radio" value="4" /> <input name="p9" type="radio" value="5" /> 非常正确
10. 尝试新鲜事物胜于墨守成规. 完全不正确 <input name="p10" type="radio" value="1" /> <input name="p10" type="radio" value="2" /> <input name="p10" type="radio" value="3" /> <input name="p10" type="radio" value="4" /> <input name="p10" type="radio" value="5" /> 非常正确
* 请只按一次送交答案键.
</form>
网页码就是这样下面是显示样子
答案是EXCEL的格式如
1 2 3 4 5 6 7 8 9 10 …
A E D B D C A E C C …
希望有高手能给个解答如何将答案填入单选框中
[解决办法]
http://community.csdn.net/
[解决办法]
我晕你.你直接导航到
http://passport.csdn.net/account/login?from=http://community.csdn.net/
一步不就完成了.?
Dim url As New Uri("http://passport.csdn.net/account/login?from=http://community.csdn.net/") Me.WebBrowser1.Navigate(Uri) Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted Dim doc As HtmlDocument Dim tmpHtml As HtmlElement doc = Me.WebBrowser1.Document tmpHtml = doc.GetElementsByTagName("input").Item("u")'用户名 tmpHtml.SetAttribute("value", "aaaa") tmpHtml = doc.GetElementsByTagName("input").Item("p") tmpHtml.SetAttribute("value", "bbbb") tmpHtml = doc.GetElementsByTagName("a").item("aLogin") tmpHtml.InvokeMember("click") End Sub
[解决办法]
''' <summary>''' ''' </summary>''' <remarks></remarks>Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '关闭js错误 WebBrowser1.ScriptErrorsSuppressed = True End Sub Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted obj.Set() End Sub '定义等待线程 Private obj As New System.Threading.AutoResetEvent(False) Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click '定义用户和密码 Dim yonghu As String = "caoqinghua" Dim mima As String = "密码" obj.Reset() '导航到登录界面 Me.WebBrowser1.Url = New System.Uri("http://passport.csdn.net/account/login", System.UriKind.Absolute) '等待导航 While (obj.WaitOne(100, False) = False) Application.DoEvents() End While '填入用户和密码 WebBrowser1.Document.Window.Frames("logfrm").Document.All("u").SetAttribute("value", yonghu) WebBrowser1.Document.Window.Frames("logfrm").Document.All("p").SetAttribute("value", mima) 'WebBrowser1.Document.Window.Frames("logfrm").Document.All("chkRemember").SetAttribute("value", "on") '执行登录事件 obj.Reset() WebBrowser1.Document.Window.Frames("logfrm").Document.InvokeScript("singin", New Object() {}) '等待登录结束 While (obj.WaitOne(100, False) = False) Application.DoEvents() End While '进入导航界面 obj.Reset() Me.WebBrowser1.Url = New System.Uri("http://bbs.csdn.net/", System.UriKind.Absolute) '等待登录结束 While (obj.WaitOne(100, False) = False) Application.DoEvents() End While '继续操作 End Sub End Class