zoukankan      html  css  js  c++  java
  • Perl单URL爬虫

    分析了下代码,之前官方那段其实很简单,只要理解了,就能随意改动了。

    根据自己的想法,目前想做的是全方位爬虫,并不是类似如此简单的爬,

    简单的整理了下这个单例的抓URL。效果一般般,这几天忙完事情,我就改成多线程。

    把URL的深度选项加入,以及可定向操作级别。这东西是我一直在思考的东西,也是我的一个想法。

    把单例的例子保存下,方便以后翻。

    #!/usr/bin/perl
    
    use LWP::UserAgent;
    use HTML::LinkExtor;
    use URI::URL;
    
    @imgs=();
    
    test("http://www.baidu.com/s?wd=dd");
    
    sub test{
     local($url)=shift;
    
     # 创建UserAgent对象
     $ua=LWP::UserAgent->new;
    
     # 调用HTML模块来取出链接并放入数组当中
     $p = HTML::LinkExtor->new(\&callback);
    
     # 通过GET的方式下载页面(引用了UserAgent对象)
     $res = $ua->request(HTTP::Request->new(GET => $url),
                          sub {$p->parse($_[0])});
    
     my $base = $res->base;
    
     @imgs = map { $_ = url($_, $base)->abs; } @imgs;
    
      print join("\n", @imgs), "\n";
    }
    
    sub callback{
      my($tag,%attr)=@_;
    
      return if $tag ne 'a';
    
      push(@imgs,values %attr);
    }
  • 相关阅读:
    网络流24题
    可持久化Treap
    后缀平衡树
    bzoj2561-最小生成树
    poj3164-Command Network
    最小树形图
    hdu2121-Ice_cream’s world II
    线性处理逆元
    bzoj3992-序列统计
    JavaScript 类型转换
  • 原文地址:https://www.cnblogs.com/xiaoCon/p/3067221.html
Copyright © 2011-2022 走看看