zoukankan      html  css  js  c++  java
  • 写个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.

  • 相关阅读:
    团队冲刺(九)
    TensorFlow利用Keras实现线性回归
    Spark Streaming 编程初级实践
    Spark SQL 编程初级实践
    解决Ubuntu输入正确密码后进不去桌面
    RDD 编程初级实践
    A master URL must be set in your configuration at org.apache.spark.SparkContext.<init>(SparkContext.
    TensorFlow加载mnist数据集并显示
    Spark读取文件统计行数
    【测试技能】服务端测试就是postman看接口和操作redis吗?
  • 原文地址:https://www.cnblogs.com/BoyeeStudio/p/309398.html
Copyright © 2011-2022 走看看