• 写个perl程序自动下载《南方周末》(2005年12月最后一期,38版,值得一看)


    今天是个好日子,不过,我还要为考试而奔腾不息啊!

    首先还得向各位朋友送上我最诚意的祝愿:

           祝朋友们元旦快乐!

           在新的一年里,思路多多,创新多多,收藏多多!

    好了,入正题。呵呵!
    上网下载,难按鼠标,写个perl小程序来帮助自动化,呵呵。
    有缺陷,不过想到了,还会改正的。欢迎同好朋友批评指正!
     

     1use strict;
     2use warnings;
     3
     4my $line;
     5require LWP::UserAgent;
     6require HTTP::Request;
     7my $ua = LWP::UserAgent->new;
     8
     9open OUT_FILE,"+>>nanfang.txt" or die("Could not write nanfang.txt!");
    10
    11for(my $i=1;$i<10;$i++)
    12{
    13 my $string="http://www.nanfangdaily.com.cn/southnews/pdf/zm/20051229/0$i.pdf\n";
    14 syswrite OUT_FILE,$string;
    15}
    16
    17for (my $i=10;$i<=38;$i++) {
    18 my $string="http://www.nanfangdaily.com.cn/southnews/pdf/zm/20051229/$i.pdf\n";
    19 syswrite OUT_FILE,$string;
    20}
    21
    22close OUT_FILE;
    23#undef(OUT_FILE);
    24
    25#$ua->timeout(10);
    26#$ua->env_proxy;
    27#if (defined(\*OUT_FILE)){ print "OUT_FILE defined!";}
    28
    29open IN_FILE, "nanfang.txt" or die("Could not write nanfang.txt!");
    30while($line=<IN_FILE>)
    31{
    32 chomp($line);
    33 $line=~/(.*)\/(\d+.pdf)$/;
    34
    35 my $req = HTTP::Request->new(GET =>$line);
    36 my $res = $ua->request($req, $2);
    37
    38      if ($res->is_success) 
    39    {
    40         print $line;
    41   }
    42      else
    43    {
    44         print $res->status_line, "\n";
    45  }
    46}
    47
    48close IN_FILE;
    49print "OK!";
    50
    51

    献上Perl诗歌一首:

    Write in Perl

    [Sung to the tune of The Beatles' "Let it be"]

    When I find my code in tons of trouble,
    Lecturers and colleagues start to hurl,
    Screaming words of wisdom:
    "Write in Perl."

    As the deadline fast approaches,
    And all the bugs start to unfurl,
    Somewhere, someone whispers:
    "Write in Perl."

    Write in Perl, write in Perl,
    Write in Perl, oh, write in Perl.
    C was last years language,
    Write in Perl.

    In my hour of darkness,
    and I'm feeling the weight of the world,
    Using it for SNMP!
    Write in Perl.

    If you're tearing out your hair and
    you're left with just your favorite curl,
    Soon you will be glad to
    Write in Perl.

    Write in Perl, write in Perl,
    Write in Perl, yeah, write in Perl.
    Only wimps write in Visual C.
    Write in Perl.

    Write in Perl, write in Perl
    Write in Perl, oh, write in Perl.
    Pascal won't quite cut it.
    Write in Perl.

    Write in Perl, write in Perl,
    Write in Perl, yeah, write in Perl.
    Don't even mention COBOL.
    Write in Perl.

  • 相关阅读:
    网站页面性能优化的 34条黄金守则 (雅虎团队经验)
    进程调度算法小结
    玩转TCP连接
    数据包在网络中的流转
    浅入理解JVM虚拟机
    Leecode no.47 全排列 II
    Leecode no.143 重排链表
    关于我用设计模式对公司代码重构的这件事
    进程间通信方式小结
    Leecode no.82 删除排序链表中的重复元素 II
  • 原文地址:https://www.cnblogs.com/BoyeeStudio/p/309398.html
Copyright © 2020-2023  润新知