Perl   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了可以在新浪网盘里面批量获取搜索内容的地址及下载文件大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
use LWP::UserAgent;
use HTML::TreeBuilder;
use LWP::Simple;
use URI;
use Encode;
@list_url=();
@download_url=();
foreach (1..16)#在新浪微盘里面搜索perl会有16个页面的结果
         {
         my $url = URI->new('http://vdisk.weibo.com/search/');
         my($keyword,$sortby,$pagE) = ("perl","default",$_);#对perl这个关键词做测试
         $url->query_form
         (
           # All form pairs:
           'keyword'  => $keyword,'sortby' => $sortby,'page' => $page,);
         push @list_url,$url;
         }

my $ua = LWP::UserAgent->new;
#open fh,">aa.txt";
foreach (@list_url)#对我们自己合成的目标url做循环爬取适合的链接
          {
          my $response = $ua->get($_);
          $html=$response->content;
           my $tree = HTML::TreeBuilder->new; # empty tree
           $tree->parse($html) or print "error : parse html ";
           @pdf_name=$tree->find_by_attribute("class","sort_name_intro") or print "error : cAnnot find pdf_name ";
                  foreach (@pdf_Name)
                  {
                     $node=$_->look_down(_tag=>'a');
                     $a=$node->attr('href');
                     $b=encode("cp936",decode("utf-8",$node->attr('title')));
                     $c="$a\t$b";
                     push @download_url,$c;#把目标链接的url及文件名添加到下载列表
                  }
          }

foreach (@download_url)
          {
          @tmp=split;
          $html=get($tmp[0]);
          $html=~/fileDown\.init.*?\"url\":\"(.*?)\",/;#这个是关键,我找了半天才找到该页面的真实url地址
          $a=$1;
          $a=~s/\\//g;
          print $a;
          getstore("$a","$tmp[1]");
          }

大佬总结

以上是大佬教程为你收集整理的可以在新浪网盘里面批量获取搜索内容的地址及下载文件全部内容,希望文章能够帮你解决可以在新浪网盘里面批量获取搜索内容的地址及下载文件所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: