![]() 支柱会员
|
述求:http://bbs.et8.net/bbs/showthread.php?t=664340
开工: 1.找文件名规律,gif文件名有两位随机位,碰壁 2.查看htm文件,http://www.wulffmorgenthaler.com/thestrip.asp?cDay=09&cMonth=05&cYear=2005,带年月日,有规律真好 ![]() 3.列表年月日,备用 4.出动curl,下载htm,分析htm,下载gif 5.收工 保存为get_gif.cmd运行,自行修改红色部分,现表示下载前10天的gif文件 代码:
@echo off ::/ * list date */ set /a n=0 :loop set /a n+=1 >t_day.vbs echo ' Yesterday.vbs, Version 1.01 >>t_day.vbs echo ' >>t_day.vbs echo ' Written by Rob van der Woude >>t_day.vbs echo ' http://www.robvanderwoude.com >>t_day.vbs echo ' >>t_day.vbs echo ' Calculate yesterday's date >>t_day.vbs echo dtmYesterday = DateAdd("d",-%n%,Date) >>t_day.vbs echo ' >>t_day.vbs echo ' Get yesterday's year >>t_day.vbs echo strYear = DatePart("yyyy",dtmYesterday) >>t_day.vbs echo ' >>t_day.vbs echo ' Get yesterday's month, add leading zero if necessary >>t_day.vbs echo If DatePart("m",dtmYesterday) ^< 10 Then >>t_day.vbs echo strMonth = 0 ^& DatePart("m",dtmYesterday) >>t_day.vbs echo Else >>t_day.vbs echo strMonth = DatePart("m",dtmYesterday) >>t_day.vbs echo End If >>t_day.vbs echo ' >>t_day.vbs echo ' Get yesterday's day, add leading zero if necessary >>t_day.vbs echo If DatePart("d",dtmYesterday) ^< 10 Then >>t_day.vbs echo strDay = 0 ^& DatePart("d",dtmYesterday) >>t_day.vbs echo Else >>t_day.vbs echo strDay = DatePart("d",dtmYesterday) >>t_day.vbs echo End If >>t_day.vbs echo ' >>t_day.vbs echo ' Format output for yesterday >>t_day.vbs echo strYest = strYear ^& strMonth ^& strDay >>t_day.vbs echo ' >>t_day.vbs echo ' echo >>t_day.vbs echo Wscript.echo( strYest ) for /f "delims=" %%i in ('cscript.exe //nologo t_day.vbs') do echo %%i>>tmp.txt if %n% neq 10 goto :loop ::/ * get htm * / for /f "delims=" %%i in (tmp.txt) do ( setlocal ENABLEDELAYEDEXPANSION set n=%%i curl -o !n!.htm http://www.wulffmorgenthaler.com/thestrip.asp?cDay=!n:~-2!^&cMonth=!n:~4,2!^&cYear=!n:~0,4! endlocal ) ::/ * get gif * / for /f "tokens=4 delims==" %%i in ('findstr "log" *.htm') do ( setlocal ENABLEDELAYEDEXPANSION set m=%%i curl -o !m:~5,-5! http://www.wulffmorgenthaler.com/!m:~1,-5! endlocal ) ::/ * clean * / del *.htm tmp.txt 2>nul 参考资料 【原创】教你学用CURL --- 命令行浏览器 ========================================================= 下载 curl 此帖于 2005-06-02 11:20:57 被 hitme 编辑. . |
||
![]() 『软件使用』版主
|
狂人,啊啊啊
|
||
![]() 热心会员
|
就知道批处理的咚咚,找楼主没错了,真快。
|
||
![]() 有多少能力 就办多少事! |
![]() 热心会员
|
引用:
|
|||
![]() HIDDEN MESSAGE LEVEL 3 14863 159357 789 159357 3245687 3684 |
![]() 终极会员
|
楼主。命令行太强了。
|
||
![]() 宝贝宝贝笑一笑 笑容其实很美妙 只要天天没烦恼 其他一切不重要 |
![]() 支柱会员
|
引用:
东拼西凑。。四不象了 bs我吧,hitme最好 此帖于 2005-06-02 12:56:36 被 hitme 编辑. . |
|||
![]() 待认证激活
|
引用:
真强啊, 真的可以下... 多谢多谢. 就是速度好慢, 有没有什么办法? 另外, hitme能不能把这个再改进一下?? 现在好像得先下载好设置的天数的HTM, 然后才一个个下GIF, 有没有办法让他下一个HTM就下这个HTM的GIF, 然后就直接删除这个HTM? 否则要抓整站的话,下了半天还是HTM啊... 另外打开这个目录肯定有几千个文件机器都要死了... 现在是设置为10天的, 如果想下载所有的, 应该怎么设?? 想了半天还是问一下好, 万一设错了, 用这东西又得重新来过了... 此帖于 2005-06-02 13:57:31 被 C.K dEsIgn 编辑. . |
|||
![]() 热心会员
|
学习中。。。
|
||
![]() 去留无意静观那后庭花开花落; 宠辱不惊笑看那天空云卷云舒。 ------------------------------- |
![]() 支柱会员
|
引用:
代码:
::/ * get htm&gif * / for /f "delims=" %%i in (tmp.txt) do ( setlocal ENABLEDELAYEDEXPANSION set n=%%i curl -o !n!.htm http://www.wulffmorgenthaler.com/thestrip.asp?cDay=!n:~-2!^&cMonth=!n:~4,2!^&cYear=!n:~0,4! for /f "tokens=4 delims==" %%j in ('findstr "log" *.htm') do ( set m=%%j curl -o !m:~5,-5! http://www.wulffmorgenthaler.com/!m:~1,-5! ) del *.htm endlocal ) 可以分次进行啊 0->100 101->200 ... 此帖于 2005-06-02 14:46:33 被 hitme 编辑. . |
|||
![]() 待认证激活
|
引用:
hitme能否把完整修改好的再发一个附件上来?? |
|||
![]() 支柱会员
|
引用:
![]() 不会vbs,列表date部分效率极低,等sammy来改.. :blush; |
|||
![]() 待认证激活
|
引用:
05-24-2002开始 |
|||
![]() 支柱会员
|
引用:
|
|||
![]() 待认证激活
|
速度好慢, 龟速执行中。... 多谢 hitme
|
||