以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助:大红袍老师 自动登录微信订阅号后,怎么自动打开素材管理页面呢?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=84957)

--  作者:李孝春
--  发布时间:2016/5/13 19:04:00
--  求助:大红袍老师 自动登录微信订阅号后,怎么自动打开素材管理页面呢?
求助:自动登录微信订阅号后,怎么自动打开素材管理页面呢?
目前已经完成自动登陆微信订阅号操作,

程序代码(见窗口1中的按钮事件代码)已经实现了一键登录微信订阅号,但是怎么也打不开第二节点页面,求助!

要求:登录成功并且自动打开素材管理页面(进而扩展到打开登录成功后的任何一个页面呢?)

问题1:如果实现在登录成功后的显示页面中,将当前页面的网页地址作为程序操作下一步的基础网址,获取当前页面中的元素,然后查找相关元素,如打开素材管理栏目
问题2:打开素材管理页面后,如何获取素材列表的所有文章呢?
【大红袍老师:之前在你帮助的网页操作学习中都是单一的文章列表】
素材列表有一个特性:一个素材会有多个图文信息 也可能只有一条信息  
该怎么操作呢?
[此贴子已经被作者于2016/5/13 19:18:27编辑过]

--  作者:Hyphen
--  发布时间:2016/5/14 10:37:00
--  
问题1:

Dim web As System.Windows.Forms.WebBrowser = e.Form.Controls("WebBrowser1").Basecontrol
web.Navigate("https://mp.weixin.qq.com")
Do Until web.ReadyState = 4
    Application.DoEvents
Loop

If web.Document.Body.OuterHtml.Contains("btn_login") Then \'判断一下当前页面的是否包含这串字符串(用来判断是否已经处于登录状态)
    web.Document.GetElementById("account").SetAttribute("Value", "waxjcy")
    web.Document.GetElementById("Password").SetAttribute("Value", "08542622000")
    web.Document.GetElementById("loginbt").InvokeMember("click")

End If

Dim div = web.Document.GetElementById("menuBar")
Do While  div Is Nothing
    div = web.Document.GetElementById("menuBar")
    Application.DoEvents
Loop

Dim hec As System.Windows.Forms.HtmlElementCollection = div.GetElementsByTagName("A")

For i As Integer = 0 To hec.Count-1
    If hec(i).InnerHtml.Contains("素材管理") Then
        hec(i).InvokeMember("click")
        Exit For
    End If
Next

--  作者:Hyphen
--  发布时间:2016/5/14 10:47:00
--  
问题2: 

还是老老实实用接口获取素材吧,一个调用就搞定,几个小时的功夫。通过分析网页的方式,半个月都搞不定