[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] 批处理怎样实现当超过3次下载失败就跳到下一日期运行?

斑竹:
首先谢谢你帮忙写代码!
我运行代码的时候发现有点不完美!就是有的地址是没有小说的例如20111111这天是没有小说的!
程序也会运行20次,当然20次都是失败的,也就是说浪费了20秒时间!能不能改下!
改成超过下载3次失败就跳到下一日期!20111111就会跳到20111112继续运行!一直循环
---------------------------------------
  1. @echo off&setlocal enabledelayedexpansion
  2. copy wget.exe %windir%\system32\ >nul
  3. copy rar.exe %windir%\system32\ >nul
  4. echo 输入你要下载的开始日期和结束日期!!!
  5. set /p @start=StartDate(YYYYMMDD):
  6. set /p @end=EndDate  (YYYYMMDD):
  7. set @|findstr /vx "@[a-t]*=[0-9]*[0-9][0-9][0-9][0-9]"&&(
  8.         echo 错误的日期格式
  9.         pause&endlocal&%0
  10. )
  11. for /l %%a in (101 1 131) do (
  12.         set str=%%a
  13.         set b=!b! !str:~-2!
  14.         if %%a leq 112 set a=!b!
  15.         if %%a leq 120 set c=!b!
  16. )
  17. (for /l %%a in (%@start:~,-4% 1 %@end:~,-4%) do (
  18.         for %%b in (%a%) do (
  19.                 for %%c in (%b%) do (
  20.                         set /a "test=(%%a%%b%%c-%@start:-=%|%@end:-=%-%%a%%b%%c)>>31"
  21.                         if !test!==0 echo %%a%%b%%c
  22.                 )
  23.         )
  24. ))>tmp1 2>nul
  25. findstr /ve "0[2469]31 0230 1131 [02468][048]000229 [13579][26]000229" tmp1|findstr /e "[^2].. 12.. 02[0-1]. 022[0-8] [02468][048]0229 [13579][26]0229">tmp2
  26. (for /f %%a in (tmp2) do (
  27.         for %%b in (%c%) do echo %%a%%b
  28. ))>结果.txt
  29. del tmp?>nul
  30. for /f %%i in (结果.txt) do wget -nc -x dzs.qisuu.com/%%i.rar
  31. del 结果.txt
  32. pause
复制代码
本人已死!不用联系!~
要联系下来联系!~~

wget -t 3
wget --tries=3
1

评分人数

    • CrLf: 助人为乐奖金+精神损失费...PB + 8

TOP

回复 2# awk

完全不好使!没用!
1

评分人数

    • CrLf: 什么语气,人家来帮忙又不欠你的PB -5
本人已死!不用联系!~
要联系下来联系!~~

TOP

继续顶!求解!
本人已死!不用联系!~
要联系下来联系!~~

TOP

  1. (for /f %%a in (tmp2) do (
  2.         for %%b in (%c%) do echo %%a%%b
  3. ))>结果.txt
  4. del tmp?>nul
  5. for /f %%i in (结果.txt) do wget -nc -x dzs.qisuu.com/%%i.rar
  6. del 结果.txt
复制代码
改成:
  1. (for /f %%a in (tmp2) do (
  2.         for %%b in (01 02 03) do wget -nc -x dzs.qisuu.com/%%i.rar %%a%%b
  3.         if exist %%a?? (
  4.                  for %%b in (%c:*03 =%) do wget -nc -x dzs.qisuu.com/%%i.rar %%a%%b
  5.         )
  6. ))>结果.txt
  7. del tmp?>nul
  8. pause
复制代码

TOP

回复 5# CrLf

没成功呢!

运行一次要不到几秒就完!
////////
可是改了后运行代码!貌似地址都变了?运行还很慢!一个要5秒以上吧!
本人已死!不用联系!~
要联系下来联系!~~

TOP

顶!斑竹看看!
本人已死!不用联系!~
要联系下来联系!~~

TOP

回复 6# jellyhk


    不懂,我都不知道那个 %25i.rar 的文件名是怎么得出来的

TOP

返回列表