Foxtable(狐表)用户栏目专家坐堂 → 想从网页上提取贵金属数据后直接进行预算成本核算


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

主题:想从网页上提取贵金属数据后直接进行预算成本核算

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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
想从网页上提取贵金属数据后直接进行预算成本核算  发帖心情 Post By:2021/12/6 16:46:00 [显示全部帖子]

下面这些代码的知识在哪些章节能找到,我用精灵都查不出来的,想搞清楚后再修改下,但查不到

Dim web As New System.Windows.Forms.WebBrowser()   
web.Navigate("http://www.ccmn.cn/historyprice/cjxh_1/")    
Do Until web.ReadyState = 4
    Application.DoEvents

Loop


'取数据
Dim Cols() As String = { "序号","品名","价格区间","均价","涨跌","单位","发布日期" }

Dim elems As object = web.Document.GetElementById("list_elem").GetElementsByTagName("tr")
Dim m As Integer = 0
For Each elem As object In elems
    Dim i As Integer = -1
    
    m = m + 1
    If m > 1 Then  '因为网页的表格有标题,如果不判断,就会增加出一个空行
        Tables("长江现货").AddNew
    End If
    
    Dim tdelems As object =  elem.GetElementsByTagName("td")
    For Each tdelem As object In tdelems
        i = i + 1
        Tables("长江现货").Current(Cols(i)) = tdelem.Innertext
        Tables("长江现货").Current("录入日期") = Date.Today
        If i > 2 Then '必须要当价格区间列已经有值,才能执行以下代码
            Dim s As String = Tables("长江现货").Current("价格区间")
            Dim s2 As String = s.SubString(5,1) '价格区间中间的横杠有点特殊,不是键盘上的短横杠.所以用Asc()函数和Chr(-24150))配合来引用.
            Dim k As String = s.IndexOf(Chr(-24150)) '用Asc(s2)函数获得-的字符编码是-24150
            Tables("长江现货").Current("最高价") = s.SubString(k+1)
            Tables("长江现货").Current("最低价") = s.Remove(k)
        End If
    Next
Next
Tables("长江现货").save

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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/6 17:32:00 [显示全部帖子]

上面的代码都是在网页的页面源代码中提取数据的吗?

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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 15:06:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看
Dim web As New System.Windows.Forms.WebBrowser()
msgbox(0)
web.Navigate("https://www.ccmn.cn/cjysw.shtml")
msgbox(0.1)
Do Until web.ReadyState = 4
    Application.DoEvents
Loop
msgbox(1)

Dim Cols() As String = { "序号","品名","最低价","最高价","均价","涨跌","日期" }
Dim elems As object = web.Document.GetElementById("table1").GetElementsByTagName("tr")

msgbox(2)
For Each elem As object In elems
    Dim tds As object =  elem.GetElementsByTagName("td")
    msgbox(3)
    If tds.Count > 0  AndAlso tds.Count < 7
        msgbox(tds.Count)
        msgbox(tds(0).innerText & ":" & tds(1).innerText & ",," & tds(2).innerText & ":" & tds(3).innerText & ",," & tds(4).innerText & ":" & tds(5).innerText & ":" & tds(6).innerText)
        Dim ndr =  Tables("金属报价").AddNew
        ndr("序号") = tds(0).innerText
        ndr("品名") = tds(1).innerText
        ndr("最低价") = tds(2).innerText
        ndr("最高价") = tds(3).innerText
        ndr("均价") = tds(4).innerText
        ndr("涨跌") = tds(5).innerText
        ndr("日期") = tds(6).innerText
    End If
Next
Tables("金属报价").save
运行到这句时提示
图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
web.Navigate("https://www.ccmn.cn/cjysw.shtml")

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 15:06:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:提取报价.table


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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 15:11:00 [显示全部帖子]

这个应该是ID吧
图片点击可在新窗口打开查看此主题相关图片如下:5.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 15:36:00 [显示全部帖子]

甘要怎样搞

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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 15:49:00 [显示全部帖子]

没有增加到行


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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 16:17:00 [显示全部帖子]

甘就是无得玩了,要转战PYTHON了进行网页提取了,这几日就白搞了


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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 16:39:00 [显示全部帖子]

个人建议:这个网页数据提取问题,孤表应该要解决得了,这个功能对数据处理很有必要的,特别是孤表这个数据处理平台

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


加好友 发短信
等级:八尾狐 帖子:1995 积分:6338 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2021/12/7 17:20:00 [显示全部帖子]

杰哥,搞了二日白搞了,还是直接用PYTHON把网页数据提取到SQL算了
这个不是孤表的强项
现在做着个成本预算报价,希望能随贵金属报价而生成报价表

 回到顶部
总数 11 1 2 下一页