以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何从网络获取日期  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=39641)

--  作者:wilson
--  发布时间:2013/8/28 20:39:00
--  如何从网络获取日期
求助:
如何从http://www.time.ac.cn/stime.asp网址获取日期
--  作者:有点甜
--  发布时间: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)

--  作者:有点甜
--  发布时间: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)

--  作者:wilson
--  发布时间:2013/8/28 21:32:00
--  
非常感谢!
--  作者:gsnake
--  发布时间:2013/8/28 21:33:00
--  
http://www.time.ac.cn/stime.asp  打不开
--  作者:realredred
--  发布时间:2013/8/28 21:54:00
--  
套用了百度北京时间网页后
简单的方法可行
再具体一点的代码  会报錯

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


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

--  作者:wilson
--  发布时间:2013/8/28 22:24:00
--  
如果是只获取日期,该如何解决?
--  作者:有点甜
--  发布时间: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}日(?<=服务器时间.*)")

--  作者:wilson
--  发布时间:2013/9/6 21:42:00
--  
以下是引用有点甜在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)

上述代码效率不太高,

求助,如何获取网络日期