Board logo

标题: 用批处理批量下载《经典帖子分类索引》中的帖子 [打印本页]

作者: zsj008od     时间: 2008-3-20 14:45    标题: 用批处理批量下载《经典帖子分类索引》中的帖子

在for中用多个set的时候遇到点问题,来这里一查才知道是变量延迟的问题,现在明白了。献上一段批量下载《批处理室经典帖子分类索引》中帖子的批处理
@echo off
echo.
echo 需要grep/sed/ConvertZ 8.02/wget等软件配合
echo 请到http://gnuwin32.sourceforge.net/下载上面几个软件并安装
echo.
pause
set Wget_Path=C:\Program Files\GnuWin32\bin
path %Wget_path%;E:\software\小工具\ConvertZ 8.02;%path%
wget "http://www.cn-dos.net/forum/viewthread.php?tid=27667&action=printable" -O index.html
rem utf8编码转gbk
start /wait ConvertZ /i:utf8 /o:gbk /f:s index.html
grep ">可打印版本<" index.html >tmp1.txt
grep -o tid=[0-9][0-9]* tmp1.txt >tmp2.txt
grep -o [0-9][0-9]* tmp2.txt >tmp3.txt
md bat
cd bat
md images
cd images
md default
cd default
wget http://www.cn-dos.net/forum/images/default/logo.gif
cd ..
cd ..
for /f %%f in (..\tmp3.txt) do (
IF NOT EXIST viewthread_%%f.html (
wget "http://www.cn-dos.net/forum/viewthread.php?tid=%%f&action=printable" -O viewthread_%%f.html
start /wait ConvertZ /i:utf8 /o:gbk /f:s viewthread_%%f.html
grep "打印本页" viewthread_%%f.html >tmp1.txt
sed "s/<b>标题: <\/b>//g;s/ <a.*//g" tmp1.txt >tmp2.txt
for /f %%i in (.\tmp2.txt) do rpl "<title>中国DOS联盟论坛 - Powered by Discuz! Board</title>" "<title>%%i</title>" viewthread_%%f.html
)
)
move /Y ..\index.html
然后用工具替换一下index.html中的url地址就行了。
作者: plp626     时间: 2008-3-20 16:59
这个rpl好像是外部工具, 楼主提供的地址没有rpl的下载,
另外可否详细介绍下rpl这工具用法?

  Quote:
RPL(Remote Initial Program Load:远程启动服务)是一种较早出现的无盘网络组建技术,这种启动方式的典型代表是早期以Windows NT Server 4.0为服务器操作系统组建而成的Windows 95无盘网络。

[ Last edited by plp626 on 2008-3-20 at 05:15 PM ]
作者: zsj008od     时间: 2008-3-21 20:27
rpl:replace strings in multiple files  多个文件中替换字符串
http://gnuwin32.sourceforge.net/packages/rpl.htm
grep:print lines matching a pattern 用正则表达式搜索字符串
http://gnuwin32.sourceforge.net/packages/grep.htm
sed:stream editor  文件编辑
http://gnuwin32.sourceforge.net/packages/sed.htm
wget:retrieve files from the WWW  dos下下载网络文件
http://gnuwin32.sourceforge.net/packages/wget.htm
ConvertZ:编码转换
http://www.crsky.com/soft/720.html
作者: zsj008od     时间: 2008-3-21 20:30
rpl/wget/sed/grep下载
http://upload.cn-dos.net/img/126.rar

ConvertZ去http://www.crsky.com/soft/720.html 下载哈
作者: vkill     时间: 2008-3-22 16:07
既然用了sed 为什么还要用 grep 和 rpl ,呵呵~不过还是佩服楼主,精通那么多工具的用法

我喜欢用 wget+sed+ConCmd

[ Last edited by vkill on 2008-3-22 at 04:12 PM ]