找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 24629|回复: 9

[原创代码] Perl批量下载桌酷网站某个分类的壁纸

[复制链接]
发表于 2011-8-15 17:25:58 | 显示全部楼层 |阅读模式
只管下载,没有去理会细节上的事情,所以很多毛病可以挑~

环境:This is perl, v5.10.1 built for MSWin32-x86-multi-thread
(with 2 registered patches, see perl -V for more detail)

另外由于perl学的不精,借用wget ....
  1. $main="http://www.zhuoku.com";
  2. $somepage="http://www.zhuoku.com/zhuomianbizhi/dong/index-1.htm";
  3. system("wget -O a.txt $somepage");
  4. open READ,"<a.txt";
  5. foreach (<READ>) {
  6.         if (/div class="bizhiin"/) {$line=$_;}
  7. }
  8. close READ;
  9. @test=split("</a>",$line);

  10. $startYN=0;

  11. foreach (@test) {
  12.         if (/img src/) {
  13.                 /href="([^"]+)".*alt="(.*)"/;
  14.                 print "$1 $2\n";
  15.                 $name=$2;
  16.                 system("wget -nc $main$1");
  17.                 $str=$1;
  18.                 $str=~s/.htm/\(1\).htm/;
  19.                 system("wget -nc $main$str");
  20.                 $str=~s/[^\/]+.htm$//; #获取中间关键地址段
  21.                 $file=$&;
  22.                 &test;
  23.         }
  24. }
  25. <STDIN>;

  26. sub test() {
  27.         print "$name $main $str $file";
  28.         open READ,"<$file";
  29.         foreach (<READ>) {
  30.                 if (/\(2\).htm/) {
  31.                         /(\d+)<\/a><\/li><\/div><\/div>/;
  32.                         $end=$1;
  33.                 }
  34.         }
  35.         close READ;
  36.         mkdir "$name";
  37.         chdir "$name";
  38.                 foreach (1..$end) {
  39.                         $file=~s/\(\d+\)/\($_\)/;
  40.                         print "\n$file";
  41.                         if (! -e $file) {
  42.                                 system("wget -nc $main$str$file");
  43.                         }
  44.                         &getpic();
  45.                 }
  46.         chdir "../";
  47. }

  48. sub getpic() {
  49.         open READ,"<$file";
  50.         $startYN+=1;
  51.         $pan=$startYN % 4;
  52.         foreach (<READ>) {
  53.                 if (/id="imageview" src="([^"]+)"/) {
  54.                         print "$1\n";
  55.                         if ($pan==0) {
  56.                                 system("wget -nc $1");
  57.                         } else {
  58.                                 system("start /min cmd /c wget -nc $1");
  59.                         }
  60.                 }
  61.         }
  62. }
复制代码

评分

参与人数 2技术 +2 收起 理由
Hello123World + 1 博客很不错哦!
ArdentMan + 1 顶实用性的东东

查看全部评分

发表于 2011-8-15 17:55:33 | 显示全部楼层
我很好奇你这个表情怎么搞上去的....
发表于 2011-8-15 18:09:17 | 显示全部楼层
我很好奇你怎么没发现这是论坛自带的默认表情[偷笑]

以前我很喜欢去桌酷下壁纸,现在没换过壁纸
发表于 2011-8-16 08:43:51 | 显示全部楼层
out 了,汗...
发表于 2011-8-18 11:16:33 | 显示全部楼层
本帖最后由 Hello123World 于 2011-8-18 11:19 编辑


可以发表情了?
 楼主| 发表于 2011-8-18 15:32:13 | 显示全部楼层
本帖最后由 523066680 于 2011-8-18 15:35 编辑
可以发表情了?
Hello123World 发表于 2011-8-18 11:16



    你们啊……  论坛第一次改版我就知道一定有酷猴表情啦
跟红联类似的版面。

倒是很想知道这些论坛表情去哪儿下载
酷猴  呆呆男  还有搜狐那里的 ...
 楼主| 发表于 2011-8-18 16:04:30 | 显示全部楼层
哦 查看属性的时候看到地址了
http://www.bathome.net/images/smilies/coolmonkey/01.gif
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%a in (1,1,20) do (
  4.         set n=0%%a
  5.         wget -nc http://www.bathome.net/images/smilies/coolmonkey/!n:~-2!.gif
  6. )
复制代码
 楼主| 发表于 2011-8-18 16:16:49 | 显示全部楼层
如果能弄到柏夫表情的话…… 哈哈~

发表于 2011-8-18 16:41:13 | 显示全部楼层
回复 8# 523066680


    哈哈。
以前是不能发的,发出来就一些字符串。
发表于 2011-8-18 22:37:56 | 显示全部楼层
回复 6# 523066680


你DZ论坛自带的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 07:47 , Processed in 0.026088 second(s), 12 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表