免费注册 查看新帖 |

  平台 论坛 博客 文库
最近访问板块
查看: 99830 | 回复: 8

雷锋28网LWP下载知乎答案中的视频 [复制链接]

      论坛徽章:
      12
      1 [收藏(0)] [报告]
      发表于 2018-05-15 17:48 |只看该作者 |倒序浏览

      来源:人民经济网 网址:http://www.mxy4grjo.cn/a/www.baojijob.com/

        内容正在升级改造,请稍后再试! 从者宝具的等级本身并不会对从者平时的攻击力和血量产生影响,但是宝具等级却会影响战斗中从者释放宝具的效果,能够完成一击逆转战局的表现。软件功能使用点数相机改善照片有时候拍摄的照片过于模糊的话,系统很难分辨照片内容的具体数量,这时候就需要通过点数相机中的编辑功能来调整照片的清晰度,让智能AI可以更加快速的帮助你清点数量。

      播报:
        •   游戏介绍特工使命无限金币无广告版是一款末日废土题材的RPG冒险手游,玩将可以从四个主角当中选择一个开始这段冒险,在这个充满了末世的废墟和危险的世界里,你将与其他三位勇敢的主角一起组成一支无畏的队伍,队伍将穿越废弃的城市、荒凉的荒野和危险的地下实验室,寻找资源,开拓重新建立人类家园的道路。2、办理退款或变更要求需符合时间规定(依据:主办方通知的因演出取消安排的退款时间、转场时间段),并将票品完好无损按要求退回。请根据自己的情况谨慎决策。

            惊喜:珍贵宝箱抢占为先除了在刚开始占有无所属权的篝火外,后期我们还可以与行会成员一起组团去抢夺别的公会的篝火。锦囊免疫(set3新增)不受对方锦囊牌(特技)影响(无法被对方锦囊牌选中,且无法收到锦囊牌造成的群体伤害)。

            谁会成为下一个终极园艺英雄?收获你的勇气吧战斗打响了!玩法1、收集并选择20个独特的植物和僵尸英雄并解锁。关于宇宙飞船,官方也公开了部分可调整参数,如引擎马力,飞船的火力和护盾系统等等。

            或者,使用自动团队筑造功能来快速创建你的团队,尝试新战术,并在你获得新角色之时自动升级你的队伍。总体来说这款游戏就让我沉迷了,真的可玩性很高,满分推荐!神鬼传奇GM无限宝石版怎么去亡者大地1、当你做完90剧情的话(进入亡者大地首先要完成90级的剧情--成神之路)可以通过亚特兰蒂斯传送到中庭。

          重点推荐:内容正在升级改造,请稍后再试! 4、盗贼系:盗贼系是近战攻击型职业,以暗器和隐藏技能为特色,能够造成大量伤害,但防御力较弱。3.兵营,有了主城和城墙之后当然要保护他们,所以第三个优先升级的自然就是兵营了。

          内容正在升级改造,请稍后再试!

          本帖最后由 523066680 于 2018-10-16 15:36 编辑

          首发:https://zhuanlan.zhihu.com/p/36865994

          视频示例:https://www.zhihu.com/question/271736973/answer/389377346

          其中 use Modern::Perl; 不是必需的。

          1. =info
          2.     Author: 523066680
          3.     Date: 2018-05
          4. =cut

          5. use Modern::Perl;
          6. use LWP::UserAgent;
          7. use File::Slurp;
          8. use JSON;
          9. STDOUT->autoflush(1);

          10. goto_dir("D:/temp");
          11. our $main = "https://lens.zhihu.com/api/videos/";
          12. our $ua = LWP::UserAgent->new(  );
          13. our $target = "https://www.zhihu.com/question/271736973/answer/389377346";

          14. my $res = $ua->get( $target );
          15. my $html = $res->content();
          16. my @video = $html=~/>https:.*?video\/(\d+)</g;
          17. my $oauth = get_oauth( $html );

          18. for my $idx ( 0 .. $#video )
          19. {
          20.     printf "Getting video %s - %s\n", $idx, $video[$idx];
          21.     my @vlinks = get_video_links(  $oauth, $video[$idx] );
          22.     get_video( @vlinks );
          23. }

          24. # 获取 m3u8 列表并提取链接
          25. sub get_video_links
          26. {
          27.     our ($main, $ua);
          28.     my ( $oauth, $pgcode ) = @_;

          29.     my $res = $ua->get(
          30.                 $main .$pgcode,
          31.                 "authorization" => $oauth,
          32.             );

          33.     die unless $res->is_success();

          34.     my $data = decode_json( $res->content );
          35.     my $play_url = $data->{playlist}->{sd}->{play_url};  # m3u8 url
          36.     my $pre_url;

          37.     # 获取网址共用部分
          38.     $play_url =~/(.*?\w{32})/;  
          39.     $pre_url = $1 ."/";

          40.     $res = $ua->get( $play_url );
          41.     my @vlinks = $res->content =~/\n(.*?\d+\.ts.*?)\n/g;
          42.     grep { $_ = $pre_url . $_ } @vlinks;

          43.     return $pgcode, @vlinks;
          44. }

          45. # 获取视频切片,合并
          46. sub get_video
          47. {
          48.     our $ua;
          49.     my $name = shift;
          50.     my $buff = "";
          51.     my $res;

          52.     while ( my $link = shift )
          53.     {
          54.         print $#_ + 1 ," ";
          55.         $res = $ua->get( $link );
          56.         $buff .= $res->content();
          57.     }
          58.     print "\n";

          59.     write_file( "${name}.ts", {binmode=>":raw"}, $buff );
          60. }

          61. sub get_oauth
          62. {
          63.     our ( $ua );
          64.     my $html = shift;
          65.     my ($js) = $html =~/(https:[^<>]+main\.app[^<>]+js)/g;
          66.     my $res = $ua->get( $js );
          67.     # pattern: authorization:"oauth c3cef7c66a1843f8b3a9e6a1e3160e20"}
          68.     my ($oauth) = $res->content =~/authorization:"([^"]{30,})"/;
          69.     return $oauth
          70. }

          71. sub goto_dir
          72. {
          73.     my $dir = shift;
          74.     mkdir $dir unless ( -e $dir );
          75.     chdir $dir;
          76. }

          77. __DATA__
          复制代码


          Perl 是不是过时我真的不关心,只用来做想做的事(工作和编程无关)。

          2018-10 更新,7楼

          论坛徽章:
          0
          2 [报告]
          发表于 2018-05-15 18:37 |只看该作者
          感谢分享!

          Perl是个能干活的骆驼,用起来很爽。

          论坛徽章:
          0
          3 [报告]
          发表于 2018-06-15 19:31 |只看该作者
          牛,可以做个爬虫

          论坛徽章:
          0
          4 [报告]
          发表于 2018-06-15 19:31 |只看该作者
          牛,可以做个爬虫

          论坛徽章:
          12
          5 [报告]
          发表于 2018-06-18 11:25 |只看该作者
          本帖最后由 523066680 于 2018-06-18 20:06 编辑

          回复 3# dahe_1984

          写了tumblr的视频批量下载,不过需要账号登录,加上内容敏感,就没有分享~

          论坛徽章:
          0
          6 [报告]
          发表于 2018-07-01 08:09 |只看该作者
          谢楼主,学习下!

          论坛徽章:
          12
          7 [报告]
          发表于 2018-10-16 15:35 |只看该作者
          更新一下,现在知乎简化了,不用oauth,也不用多个ts文件拼接,直接单个MP4

          代码保存为 UTF8 编码格式


          1. =info
          2.     Author: 523066680
          3.     2018-07 知乎去掉了 oauth 授权方式
          4.     2018-10 从 ts 多文件,变更为 mp4 单文件下载
          5. =cut

          6. use JSON;
          7. use Encode qw/from_to/;
          8. use LWP::UserAgent;
          9. use Mojo::DOM;
          10. use File::Slurp;
          11. STDOUT->autoflush(1);

          12. our $wdir = "D:/temp";
          13. our $main = "https://lens.zhihu.com/api/videos/";
          14. our $ua = LWP::UserAgent->new();
          15. our $target = "https://www.zhihu.com/question/271736973/answer/389377346";
          16. #our $target = "https://www.zhihu.com/question/285103979/answer/492401516";
          17. #our $target = "https://www.zhihu.com/question/278030511/answer/452274063";

          18. my $res = $ua->get( $target );
          19. my $html = $res->content();
          20. my @video = $html=~/>https:.*?video\/(\d+)</g;  # 获取视频页面链接
          21. my $title = get_title_name( $html );
          22. my ($answerID) = ($target=~/\/(\d+)$/);

          23. mkdir $wdir unless -e $wdir;
          24. chdir $wdir;

          25. for my $idx ( 0 .. $#video )
          26. {
          27.     printf "Getting video %s - %s\n", $idx, $video[$idx];
          28.     get_video( $video[$idx], "${title}Answer_${answerID}_${idx}.mp4" );
          29. }

          30. sub get_video
          31. {
          32.     our ($main, $ua);
          33.     my ( $pgcode, $fname ) = @_;

          34.     my $res = $ua->get( $main .$pgcode );
          35.     die unless $res->is_success();

          36.     my $data = decode_json( $res->content );
          37.     my $play_url = $data->{playlist}->{sd}->{play_url};

          38.     $res = $ua->get( $play_url );
          39.     write_file( $fname, {binmode=>":raw"}, $res->content );
          40. }

          41. sub get_title_name
          42. {
          43.     my $html = shift;
          44.     my $dom = Mojo::DOM->new($html);
          45.     my $title = $dom->at("title")->text;
          46.     $title =~s/ - 知乎//;
          47.     from_to( $title, "utf8", "gbk" );
          48.     return $title;
          49. }

          复制代码

          论坛徽章:
          0
          8 [报告]
          发表于 2019-03-13 16:44 |只看该作者
          路过看看啦啦啦啦

          论坛徽章:
          0
          9 [报告]
          发表于 2019-03-29 22:05 |只看该作者
          看不懂,学习中。
          返回列表
          雷锋28网 雷锋28网 程序设计 Perl LWP下载知乎答案中的视频
          您需要登录后才可以回帖 登录 | 注册

          本版积分规则 发表回复

            

          北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
          未成年举报专区
          中国互联网协会会员  联系我们:huangweiwei@itpub.net
          感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

          清除 Cookies - ChinaUnix - Archiver - WAP - TOP
            
          分享:

          收藏

          --

          --

          无障碍浏览