求救一个抓取email地址的错误,哪位帮助解决一下

kevin_zhonghongjun 2009-07-25 05:05:52
<%
Server.ScriptTimeOut=9999999
strFile = "d:\email.txt" '写上邮件地址保存文件位置,如果在本机写绝对地址,如果是在网页空间,先通过探针获取绝对地址,然后填写。
iPageCount =1000 '页数

For i=1 to iPageCount

strUrl = "http://bbs.xdd.com/viewthread.php?tid=" & cstr(i)& " " '所抓论坛页面的地址,根据实际调整

strRet = OpenUrl(strurl)
strEmail = RegExpTest("\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*",strRet)
call WriteToFile(strFile,strEmail)
'Wscript.Echo i & "/" & iPageCount

Next

Function bytes2BSTR(vIn)
Dim i
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function


Function OpenUrl(strUrl)

on Error Resume Next

Set xmlhttp = CreateObject("Microsoft.XMLHTTP")
xmlhttp.open "GET",(strUrl ),false
xmlhttp.send
OpenUrl=bytes2BSTR(xmlhttp.ResponseBody)

Set xmlhttp = Nothing
End Function


Function RegExpTest(patrn, strng)
Dim regEx, Match, Matches
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
regEx.Global = True

Set Matches = regEx.Execute(strng)

For Each Match in Matches
RetStr = RetStr & Match.Value & vbCRLF
Next
RegExpTest = RetStr
End Function


Sub WriteToFile(strFile,str)
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(strfile, 8, True)
f.Write str
set f= nothing
set fso=nothing
End Sub

%>

以上是代码

执行错误提示:

技术信息(用于支持人员)

错误类型:
Microsoft VBScript 运行时错误 (0x800A004C)
路径未找到
/11.asp, 第 67 行


浏览器类型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)

网页:
GET /11.asp

时间:
2009年7月25日, 17:01:36


详细信息:
Microsoft 支持
...全文
109 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hookee 2009-07-25
NTFS系统的话 查下D:\盘 IUSER_XX用户有没有写的权限
回复
hookee 2009-07-25
是服务器端VBScript 运行时错误呀,为何是客户端的js?应该是asp源代码的67行吧.
回复
第67行:

function URI(href)
{
IEVer = window.navigator.appVersion;
IEVer = IEVer.substr( IEVer.indexOf('MSIE') + 5, 3 );

return (IEVer.charAt(1)=='.' && IEVer >= '5.5') ?
encodeURI(href) :
escape(href).replace(/%3A/g, ':').replace(/%3B/g, ';');}

function InsertElementAnchor(href, text)
{
PrintTag('A', true, TagAttrib('HREF', URI(href)), text);
}
回复
有的!我在自己电脑上测试的。
回复
hookee 2009-07-25
strFile = "d:\email.txt" 服务器有D盘吗?
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告