VBA抓取双色球、大乐透开奖数据

2023-10-31

Sub wzssqkj()
    Dim myHTTP As Object, s As String
    
    Set myHTTP = CreateObject("WinHttp.WinHttpRequest.5.1") 'json网页
    With myHTTP
        .Open "GET", "http://www.cwl.gov.cn/cwl_admin/kjxx/findDrawNotice?name=ssq&issueCount=30", False
        .setRequestHeader "Host", "www.cwl.gov.cn"
        .setRequestHeader "Connection", "keep-alive"
        .setRequestHeader "Upgrade-Insecure-Requests", "1"
        .setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3861.400 QQBrowser/10.7.4313.400"
        .setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
        .setRequestHeader "Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"
        .setRequestHeader "Referer", "http://club.excelhome.net/thread-1575009-1-1.html"
        .setRequestHeader "Accept-Encoding", "gzip, deflate"
        .setRequestHeader "Accept-Language", "zh-CN,zh;q=0.9"
        .setRequestHeader "Cookie", "_ga=GA1.3.1058570018.1612955503; _gid=GA1.3.1852979334.1612955503; 21_vq=26"
        .send
    End With
    'Do While myHTTP.ReadyState <> 4
        'DoEvents
    'Loop
    s = myHTTP.responsetext

    Dim regex As Object, mches As Object, mch As Object, i&, j&

    Set regex = CreateObject("VBScript.Regexp")
    regex.Global = True
    regex.Pattern = "code"":""(\d+).*?date"":""(.*?)"".*?(\d\d),(\d\d),(\d\d),(\d\d),(\d\d),(\d\d)"".*?(\d\d).*?typemoney"":""(\d+).*?typemoney"":""(\d+)"
    
    Set mches = regex.Execute(s)
    
    i = 2
    For Each mch In mches
        For j = 0 To 10
            Sheet7.Cells(i, j + 1) = mch.submatches(j)
        Next j
        i = i + 1
    Next mch

End Sub
Sub wzdltkj()
    Dim myHTTP As Object, s As String
    
    Set myHTTP = CreateObject("Microsoft.XmlHttp")
    myHTTP.Open "GET", "https://webapi.sporttery.cn/gateway/lottery/getHistoryPageListV1.qry?gameNo=85&provinceId=0&pageSize=30&isVerify=1&pageNo=1&termLimits=30", False
    myHTTP.send
    
    s = myHTTP.responsetext
    
    Dim regex As Object, mches As Object, mch As Object, i&, j&

    Set regex = CreateObject("VBScript.Regexp")
    regex.Global = True
    regex.Pattern = "lotteryDrawNum"":""(\d+?)"",""lotteryDrawResult"":""(\d\d) (\d\d) (\d\d) (\d\d) (\d\d) (\d\d) (\d\d).*?""lotteryDrawTime"":""(\d+-\d+-\d+).*?""stakeAmount"":""([\d|,]+).*?""stakeAmount"":""([\d|,]+).*?""stakeAmount"":""([\d|,]+).*?""stakeAmount"":""([\d|,]+)"
    
    Set mches = regex.Execute(s)
    
    i = 2
    For Each mch In mches
        For j = 0 To 12
            Sheet3.Cells(i, j + 1) = mch.submatches(j)
        Next j
        i = i + 1
    Next mch
    
End Sub

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VBA抓取双色球、大乐透开奖数据 的相关文章

  • 使用@@Identity

    我想知道如何从另一个数据库的表中获取最近生成的自动编号值 目前我正在这样做 Do Until rsA EOF Inserts new row here works Set rs New ADODB Recordset rs Open SEL
  • 从磁盘加载多维 VBA 数组

    我正在尝试保存多维 VBA 数组 然后将其加载到磁盘或从磁盘加载 根据MSDN 网站 http msdn microsoft com en us library office gg278468 28v office 14 29 aspx 维
  • VBA - 填充自定义功能区下拉列表/列表框

    我无法填充下拉列表 列表框 原始代码来自 https exceloffthegrid com inserting a dynamic drop down in ribbon https exceloffthegrid com inserti
  • VBA 激活 Internet Explorer 窗口

    我正在制作一个宏 用于打开 Internet Explorer 导航并登录网站 一切正常 但我需要将 IE 窗口放在前面并激活它 这样我就可以使用SendKeys在上面 我发现网站和视频在名为的命令上有不同的方法AppActivate我已经
  • MS Access 表单按钮,允许用户浏览/选择文件,然后将文件导入到表中

    在我的数据库中 我可以使用以下命令创建命令按钮导入文件 DoCmd TransferText acImportDelim 导入的原始数据 导入规范 导入的原始数据 D Users Denise Griffith Documents Grif
  • 无法在我的抓取工具中设置超时选项以防止无限循环

    我已经使用 IE 在 vba 中编写了一个脚本 在其搜索框中的网页中启动搜索 通过点击搜索按钮根据搜索填充结果 网页加载它是searchbox几秒钟后它就会打开 但是 我的下面的脚本可以处理这个障碍并以正确的方式执行搜索 现在 我有一个稍微
  • VBA 完成 Internet 表单

    我正在寻找将 Excel 中的值放入网页的代码 Sub FillInternetForm Dim IE As Object Set IE CreateObject InternetExplorer Application IE naviga
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • 使用输入作为显示日期的基础

    我需要一种方法来使用用户窗体上的输入来确定将在输出上显示的日期 这是我的代码 If StatusBox Value lt 23 59 And ShiftCode Value AP Then Cells emptyRow 8 Value Da
  • 检查未绑定控件是否具有值的正确方法

    简单场景 一个表单和一个文本框 未绑定 Text1 If lt gt Text1 Then MsgBox Not Empty End If 上面的代码有效 表达方式 lt gt Text1如果文本框包含字符 则计算结果为 True 无论文本
  • 使用 ADODB 连接从关闭的工作簿中检索数据。某些数据被跳过?

    我目前正在编写一些代码 可以通过 ADODB 连接访问单独的工作簿 由于速度的原因 我选择了这种方法而不是其他方法 下面是我的代码 Sub GetWorksheetData strSourceFile As String strSQL As
  • 无法使用 VBA 代码从 Excel 连接到 Teradata - 无法通过网络访问 Teradata 服务器

    我一直在尝试使用 vba 代码从 Excel 连接到 Teradata 但收到以下错误 无法通过网络访问 Teradata Server 我已经能够从 Teradata SQL 助手成功连接 并且还成功 ping 通 Teradata 服务
  • 使用 split 函数到数组中会导致编译错误:无法分配给数组

    我正在尝试使用split 函数根据给定名称字符串中的空格拆分名称 当尝试编译我在下面编写的代码时 出现编译错误 无法分配给数组 我几乎从这里复制了微软的示例 https support microsoft com en us kb 2662
  • 数据透视表错误 |无效的调用或过程

    我需要一些帮助来解决这个问题 我正在尝试创建一个数据透视表 从第一季度开始 在同一张表中包含一系列数据 第一个 if 语句在那里是因为最后一列并不总是包含标题 所以我将其包含在那里 我希望范围是动态的 因为所制作的表格的大小将根据工作表中数
  • 如何从 SQL Server 存储过程返回值并在 Access VBA 中使用它们

    我已经在 SQL Server 中设置了一个运行良好的存储过程 我现在可以从 VBA 调用它 但想返回一个值以了解是否存在任何错误等 我的 SP 中的最后一个参数设置为 OUTPUT DataSetID int 0 Destination
  • 字符串在换行符处拆分

    我在 MS Access 表单上有一个文本框 用户将从 Excel 电子表格中复制一列数字到其中 我需要获取此输入并将其用作参数来构建查询 我的代码看起来像这样 Dim data as variant Dim input as String
  • 有什么办法可以加快这个 VBA 算法的速度吗?

    我正在寻找实现 VBAtrie http en wikipedia org wiki Trie 构建能够在相对较短的时间内 少于 15 20 秒 处理大量英语词典 约 50 000 个单词 的算法 由于我实际上是一名 C 程序员 这是我第一
  • 如何在VBA中指定当前目录作为路径?

    我有一个启用宏的工作簿 我需要指定启用宏的文件所在的当前文件夹作为路径 我尝试设置 path ActiveWorkbook Path and path CurDir 但这些都不适合我 对此有什么想法吗 如果您想要的路径是运行宏的工作簿的路径
  • 宏在第二张幻灯片上不起作用的 Powerpoint 进度

    我正在尝试创建一个宏 它将在 powerpoint 演示文稿中的幻灯片中运行 我本来可以工作 但现在停止工作了 我不知道为什么 运行幻灯片和动画的 vbscript 是 Private Sub PPTEvent SlideShowNextB
  • 使用vba更改工作表的代号

    此代码在 VBE 窗口打开时工作正常 但会引发错误Subscript out of range在这一行 wB VBProject VBComponents wS CodeName Properties CodeName Value wsDa

随机推荐