中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 【已解决】:自动网页查询执行以及网页信息抓取
作者:
标题: 【已解决】:自动网页查询执行以及网页信息抓取 上一主题 | 下一主题
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『楼 主』:  【已解决】:自动网页查询执行以及网页信息抓取

需求如下:
有一txt文件,内有很多公网IP地址(格式为每行每个IP)。
想实现一脚本自动读取txt内的IP地址(每次读一行),并在www.ip138上执行查询功能,在其对应的查询结果(包含属于那个省的ISP)依次保存到一文本中。

麻烦指点下!

谢谢!

[ Last edited by coldface on 2010-8-4 at 17:58 ]

2010-7-26 15:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『第 2 楼』:  

用curl来做的时候,好像赋值信息没提交到。
curl -d "name=222.56.15.35&submit=查询&action=2"http://www.ip138.com/ips8.asp

2010-7-26 16:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『第 3 楼』:  

额 终于翻到一篇:
curl.exe -s -d "ip=8.8.8.8&action=ip" http://ip138.com/ips8.asp
http://www.cn-dos.net/forum/viewthread.php?tid=31240

2010-7-26 16:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『第 4 楼』:  

不过怎么执行sed执行的时候中文显示是乱码

2010-7-26 17:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  Re 4 楼

把结果写入文件即可

   此帖被 +1 点积分    点击查看详情   
评分人:【 coldface 分数: +1  时间:2010-7-27 09:17




2010-7-26 23:16
查看资料  发短消息 网志   编辑帖子  回复  引用回复
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『第 6 楼』:  

还存在一个问题,我对抓取到的地址保存了在A.txt文件中,内容如下:
218.108.39.66 北京市 联通
218.105.36.69 中国 联通  
我又写了个文件保存为B.txt,内容如下:
北京市 2
联通 5
中国 0
我想用B文件的内容替换A文件中的部分内容,找了好多发现还是不会。
曾参考此篇:http://www.cn-dos.net/forum/viewthread.php?tid=22033
@echo off
setlocal enabledelayedexpansion
set file=
set /p file=  请输入要操作的文件名称(包括扩展名):
set "file=%file:"=%"
for %%i in ("%file%") do set file=%%~fi
echo.
set replaced=
set /p replaced= 请输入即将被替换的内容:
echo.
set all=
set /p all=  请输入替换字符串:
for /f "delims=" %%i in ('type "%file%"') do (
    set str=%%i
    set "str=!str:%replaced%=%all%!"
    echo !str!>>"%file%"_tmp.txt
)
copy "%file%" "%file%"_bak.txt >nul 2>nul
move "%file%"_tmp.txt "%file%"
start "" "%file%"
这个是单独输入字符替换的,如果用文件的话怎么替换?望指点!
谢谢!

2010-7-27 13:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『第 7 楼』:  

另外支持模糊匹配,就是如果a.txt内容为:
218.108.39.66  湖北省武汉市 电信
b.txt内容为:
湖北 11
电信 12
则处理之后为:218.108.39.66  11 12

2010-7-27 20:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
coldface
初级用户





积分 71
发帖 70
注册 2010-7-19
状态 离线
『第 8 楼』:  

后来我导入sql,update的

2010-8-4 17:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: