我需要输入一个链接列表,这些链接转到类似格式的页面,内容与一个标签不同。
修改
input.txt
/category/apples-and-oranges.html
/category/pineapples.html
/category/asparagus.html
/category/brussel-sprouts.html
/category/passion-fruit.html
假设涉及水果的页面有<h1>Fruit!</h1>
而非水果页面没有,但它们属于一个类别。该程序将检查http://www.mysite.com
的扩展名,然后创建一个新列表:
output.txt
/category/apples-and-oranges.html
/category/pineapples.html
/category/passion-fruit.html
这是我到目前为止所得到的:
for /f %%A in (input.txt) DO (
for "tokens=1,2 delims=:" %%b in ('FINDSTR [/R] [/I] [/S] [/C:"<H1>.*Fruit!.*</H1>"] [[http://]www.mysite.com/%%A[*.html]]') DO (
echo ^<%%A> > <output.txt>
)
)
答案 0 :(得分:3)
您的方法存在一些问题。首先,FINDSTR无法在远程URL中找到。所以你需要下载它们。
从以下代码开始,使用CURL
进行下载,以帮助您入门。
@echo off
FOR /F %%A in (input.txt) DO (
curl --output temp.html http:www.mysite.com/%%A
FOR /F "tokens=1,2 delims=:" %%B in ('FINDSTR /I /R "<H1>.*Fruit.*</H1>" temp.html') DO (
ECHO %%A
)
)
修改强>
cURL 不是Windows命令,它是外部实用程序。 http://en.wikipedia.org/wiki/CURL。你需要安装它。还有一个众所周知的网络下载工具, GNU Wget http://en.wikipedia.org/wiki/Wget。有关更多选项,请在Superuser.com https://superuser.com/questions/299754/wget-curl-alternative-native-to-windows
上查看此问题