中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-10 05:56
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求教!如何判断URL链接是否存在? 查看 1,039 回复 11
楼 主 求教!如何判断URL链接是否存在? 发表于 2008-11-03 14:07 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
请大虾们帮忙!
比如要判断 http://www.baidu.com/10000.txt 链接是否存在,存在则继续执行下面命令,(主要是如何判断URL链接)
自己无法解决,特此发帖求助,还望大虾们能解答此疑惑...

批处理或vbs都可以(不依靠外部工具执行)

[ Last edited by ajon911 on 2008-11-3 at 17:24 ]
2 发表于 2008-11-03 16:05 ·  中国 重庆 渝北区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
用VBS访问这个URL,然后判断返回值是不是200
3 发表于 2008-11-03 16:20 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
Originally posted by HAT at 2008-11-3 04:05 PM:
用VBS访问这个URL,然后判断返回值是不是200

能否具体说明一下??
4 发表于 2008-11-03 17:00 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
其实用外部工具,WGET curl 也可以实现

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
5 发表于 2008-11-03 17:04 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
像百度这个连接也会返回200吧,但是显像这个文件是不存在的。

判断返回值也许不一定准,用wget 或curl 下载要访问的文本,然后分析文件里的内容。。。

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
6 发表于 2008-11-03 17:21 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
期待满意的解决方案...
(不依靠外部工具执行)
7 发表于 2008-11-03 19:48 ·  中国 贵州 黔西南布依族苗族自治州 兴义市 电信
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线
baidu的页面不存在也会返回200,可以把得到的网页内容和http://www.baidu.com/search/error.html的比较,相同的话就是页面不存在,vbs可以实现
8 发表于 2008-11-03 20:35 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
Originally posted by s11ss at 2008-11-3 07:48 PM:
baidu的页面不存在也会返回200,可以把得到的网页内容和http://www.baidu.com/search/error.html的比较,相同的话就是页面不存在,vbs可以实现


即是如此有请 s11ss 兄该帮改良改良,(下面的返回时间太长)
On Error Resume Next
Set oDOM=WScript.GetObject("http://www.baidu.com/10000.txt")
if err.Number<>0 then
WScript.echo "不存在"
WScript.quit
end if
Do Until oDOM.readyState="complete"
WScript.sleep 200
Loop
s = oDOM.documentElement.outerText
Set oDOM=nothing
if InStr(s, "不存在")>0 or InStr(s, "未找到") then WScript.echo "不存在"
9 发表于 2008-11-03 21:50 ·  中国 贵州 黔西南布依族苗族自治州 兴义市 电信
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线
我这儿很快啊,一下就返回了
10 肯定慢,如果网络慢 发表于 2008-11-03 22:34 ·  中国 广东 中山 电信
新手上路
积分 8
发帖 7
注册 2008-11-01 23:42
17年会员
UID 129726
性别 男
状态 离线
肯定慢,如果网络慢
11 发表于 2008-11-03 23:50 ·  中国 江苏 南京 中移铁通
新手上路
积分 1
发帖 1
注册 2008-11-03 23:14
17年会员
UID 129913
性别 男
状态 离线
晕了,积分是怎么才有的呢~~~我的杂就是o
12 Re 11楼 发表于 2008-11-04 00:41 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
Q: 怎样获得积分?
A: 发新话题奖励: 积分 1 点 - 发表回复奖励: 积分 1 点
论坛跳转: