Foxtable(狐表)用户栏目专家坐堂 → 下载


  共有3894人关注过本帖树形打印复制链接

主题:下载

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/3 10:10:00 [显示全部帖子]

1、对方改版了,你本来访问的页面不存在了,自然有问题。

 

2、你现在只能根据最新版的内容重新分析重新获取数据才行。这个你自己做吧,不可能人家每次改变都要帮你重新分析重新帮你写代码的。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/3 10:40:00 [显示全部帖子]

参考代码,细节自行调整

 

Dim body As String = "gameIndex=301&searchDate=2018-09-02&gameFrom="
Dim req = System.Net.WebRequest.Create("https://kaijiang.aicai.com/open/kcResultByDate.do")
req.Method = "POST"
req.ContentType = "application/x-www-form-urlencoded"
req.UserAgent = "Mozilla/5.0 (Windows NT 6.3; rv:57.0) Gecko/20100101 Firefox/57.0"
Dim aryBuf As Byte() = Encoding.UTF8.GetBytes(body)
req.ContentLength = aryBuf.Length
Dim writer = req.GetRequestStream()
writer.Write(aryBuf, 0, aryBuf.Length)
writer.Close()
writer.Dispose()
Dim pos = req.GetResponse

Dim stm As System.IO.Stream = pos.GetResponseStream()
Dim reader As New System.IO.StreamReader(stm)
Dim str As String = reader.ReadToEnd
pos.Close
stm.Close
reader.close

msgbox(str)

Dim jo As JObject = Jobject.Parse(str)

Dim web As new System.Windows.Forms.WebBrowser
web.ScriptErrorsSuppressed = True
web.DocumentText = "<html><body><table>" & jo("resultHtml").ToString & "</table></body></html>"
Do Until web.ReadyState = 4
    Application.DoEvents
Loop
Dim trs = web.Document.GetElementsByTagName("tr")
msgbox(trs.count)
For Each tr As object In trs
    Dim tds = tr.GetElementsByTagName("td")
    output.show(tds(0).Innertext)
    output.show(tds(1).Innertext)
    output.show(tds(2).Innertext)
    output.show("--------")
Next


 

[此贴子已经被作者于2018/9/3 10:40:43编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 10:07:00 [显示全部帖子]

Dim web As new System.Windows.Forms.WebBrowser
web.ScriptErrorsSuppressed = True
web.navigate("https://www.km28.com/lottery-gp/cqssc/2018-09-11.html")
Do Until web.ReadyState = 4
    Application.DoEvents
Loop
Dim tbs = web.Document.GetElementsByTagName("table")
For i As Integer = 0 To 2
    Dim tb = tbs(i)
    Dim trs = tb.GetElementsByTagName("tr")
    msgbox(trs.count)
    For Each tr As object In trs
        Dim tds = tr.GetElementsByTagName("td")
        output.show(tds(0).Innertext)
        output.show(tds(1).Innertext)
        output.show(tds(2).Innertext)
        output.show("--------")
    Next
Next

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 14:39:00 [显示全部帖子]

以下是引用oyoy在2018/9/12 12:34:00的发言:
甜老师有时间可否帮我写完整,参考3楼代码还是不得其解.拜托了

 

你在这段代码那里增加行,赋值,如

 

For Each tr As object In trs
    Dim tds = tr.GetElementsByTagName("td") 

    Dim nr As Row = Tables("表A").addnew

    nr("第一列") = tds(0).Innertext

    output.show(tds(0).Innertext)
    output.show(tds(1).Innertext)
    output.show(tds(2).Innertext)
    output.show("--------")
Next


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 16:06:00 [显示全部帖子]

你根据自己的需求修改。请自食其力。不然,别人每次调整了网页,都要帮你写代码?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 16:07:00 [显示全部帖子]

如果看不懂代码,请先看视频教程

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 20:10:00 [显示全部帖子]

如果看不懂代码,请先看视频教程

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187


 回到顶部