Foxtable(狐表)用户栏目专家坐堂 → 如何从网络获取日期


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

主题:如何从网络获取日期

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


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

 简单的做法,就是你对获取到的字符做一个简单的处理,代码如下。

Dim web As New System.Windows.Forms.WebBrowser()
web.Navigate("http://www.time.ac.cn/stime.asp")
Do Until web.ReadyState = 4
    Application.DoEvents
Loop

'取数据
Dim data As String = web.Document.Body.InnerText
msgbox(data)

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


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

 再具体一点的代码就是如下。

Dim web As New System.Windows.Forms.WebBrowser()
web.Navigate("http://www.time.ac.cn/stime.asp")
Do Until web.ReadyState = 4
    Application.DoEvents
Loop

'取数据
Dim data As String = web.Document.Body.InnerText
Dim catchs As New System.Text.RegularExpressions.Regex("\d{4}年\d{1,2}月\d{1,2}日\d{1,2}:\d{1,2}:\d{1,2}(?<=服务器时间.*)")
Dim mc As System.Text.RegularExpressions.MatchCollection = catchs.Matches(data)
msgbox(mc(0).Value)

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


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

以下是引用realredred在2013-8-28 21:54:00的发言:
套用了百度北京时间网页后
简单的方法可行
再具体一点的代码  会报錯


你自己处理下返回的数据,就行了,3楼的代码,是针对特定格式的数据的。

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


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

以下是引用wilson在2013-8-28 22:24:00的发言:
如果是只获取日期,该如何解决?


关键是这个这句代码,根据具体情况修改。如下

Dim catchs As New System.Text.RegularExpressions.Regex("\d{4}年\d{1,2}月\d{1,2}日(?<=服务器时间.*)")

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


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

 这个取决于访问网站的速度。参考下面的代码,自己处理一下字符串。

Dim web As New System.Windows.Forms.WebBrowser()
web.Navigate("www.beijing-time.org/time.asp")
Do Until web.ReadyState = 4
    Application.DoEvents
Loop

'取数据
Dim data As String = web.Document.Body.InnerText
msgbox(data)

 回到顶部