Foxtable(狐表)用户栏目专家坐堂 → 有点甜


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

主题:有点甜

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
有点甜  发帖心情 Post By:2020/9/3 21:41:00 [只看该作者]

Dim startDate As Date = "2019-1-1"
'手工修改日期
static count As Integer = 1
Dim cando As Boolean
count +=1
If Date.Now.Hour >= 10 AndAlso Date.Now.Hour <= 22 Then
    If count = 2 Then
        count = 1
        cando = True
    End If
ElseIf  Date.Now.Hour > 22 OrElse Date.Now.Hour <= 2 Then
    cando = True
End If
If cando=True Then
    Dim endDate As Date = "2019-1-1"
    '手工修改日期
    Dim dt As DataTable = DataTables("数据下载日期表")
    'dt.deletefor("")
    Dim d As Date = startDate
    Do While d <= endDate
        If d > Date.today Then
            msgbox("不能查找大于今天的数据" & d)
        Else
            Dim fdr As DataRow = dt.Find("日期 = #" & d & "#")
            If fdr Is Nothing Then
                fdr = dt.AddNew
                fdr("日期") = d
            End If
        End If
        d = d.AddDays(1)
    Loop
    Dim dt2 As DataTable = DataTables("老时时彩")
    Dim web As new System.Windows.Forms.WebBrowser
   
   
    For Each rw As DataRow In dt.Select("下载 = false")
        If rw("下载")=False
            DataTables("老时时彩").deletefor("日期=#"& rw("日期") &"#")
        End If
        web.ScriptErrorsSuppressed = True
        Dim str As String="https://caipiao.ip138.com/shishicai/tianjing/" '.html" ' & str & "&key=" & Rand.Next(10000)
        web.navigate(str) '手工修改tj
        Do Until web.ReadyState = 4
            Application.DoEvents
        Loop
        Dim tbs = web.Document.GetElementsByTagName("table")
        For i As Integer = 0 To 2 '网页有3栏数据
            Dim tb = tbs(i)
            Dim trs = tb.GetElementsByTagName("tr")
            For Each tr As object In trs
                Dim tds = tr.GetElementsByTagName("td")
                If tds(0).Innertext<>Nothing And tds(1).Innertext<>"时间"
                    Dim r As Row=Tables("老时时彩").addnew
                    r("日期")=rw("日期")
                    r("期号")=tds(0).Innertext
                    r("时间")=tds(1).Innertext
                    r("开奖号")=tds(2).Innertext.replace(" ","") '删除空格
                End If
            Next
        Next
        If rw("日期") < Date.today Then
            rw("下载") = True
        End If
    Next
End If

如果获取网页内容

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


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/3 21:57:00 [只看该作者]

这里不提供对各种网站的分析和数据抓取的技术支持,如果有需要的请自行学习解决。


https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.forms.htmlelement?view=netframework-4.8

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2020/9/5 9:23:00 [只看该作者]

有哪位高手知道调试代码吗?

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


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/5 9:41:00 [只看该作者]

做网页数据抓取,最主要的是要懂HTML,学会分析网页的DOM结构(标签直接的关系),完整DOM结构这个可以在浏览器按F12打开开发者工具查看。或者使用下面代码显示:

Dim str As String="https://caipiao.ip138.com/shishicai/tianjing/" '.html" ' & str & "&key=" & Rand.Next(10000)
        web.navigate(str) '手工修改tj
        Do Until web.ReadyState = 4
            Application.DoEvents
        Loop
output.show(web.Document.body.innerHtml)

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2020/9/5 10:16:00 [只看该作者]

有点甜,再帮助一下,对于这个表,如何分析“显示号码”所在表的DOM结构。谢谢。

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


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/5 10:27:00 [只看该作者]

自食其力

 回到顶部