对风讯V3.1 SP2采集的一点修改(防止采集时卡住)
¬Article by admin with 0 comments
2 四 2007 用风讯系统建了一个站,在采集数据的时候,经常卡住不动,没提示出错,也没继续下去,就这样停着不动,要大半天才有反应。
这是因为被采的网站出了问题,没有响应,于是风讯采集就在等它的回应,于是,就等啊等,等了大半天。其实很容易修改一下,使得被采集的网站没有响应超过一定时间就自动跳过。
打开源文件FoosunAdminCollectincFunction.asp,将该文件开头的GetPageContent(Url)函数,改成如下:
Function GetPageContent(Url)
Dim HTTPObj
On Error Resume Next
Set HTTPObj=server.createobject("MSXML2.ServerXMLHTTP")
HTTPObj.setTimeouts 2000,2000,2000,30000
HTTPObj.open "GET",Url,False
HTTPObj.Send()
if HTTPObj.Readystate <> 4 then
Set HTTPObj = Nothing
GetPageContent = False
Exit Function
end if
GetPageContent = ResponseStrToStr(HTTPObj.ResponseBody)
Set HTTPObj = Nothing
End Function
Dim HTTPObj
On Error Resume Next
Set HTTPObj=server.createobject("MSXML2.ServerXMLHTTP")
HTTPObj.setTimeouts 2000,2000,2000,30000
HTTPObj.open "GET",Url,False
HTTPObj.Send()
if HTTPObj.Readystate <> 4 then
Set HTTPObj = Nothing
GetPageContent = False
Exit Function
end if
GetPageContent = ResponseStrToStr(HTTPObj.ResponseBody)
Set HTTPObj = Nothing
End Function
这样,当被采集的网站没有响应时,就可以自动跳过而不会卡住了。

