当前位置:  开发笔记 > 编程语言 > 正文

如何限制Perl程序中的下载?

如何解决《如何限制Perl程序中的下载?》经验,为你挑选了1个好方法。

是否有可用于下载限制的Perl模块?我想下载某个文件,但将下载速率限制为特定的KB /秒数.



1> jrockway..:

看起来像WWW :: Curl和CURLOPT_MAX_RECV_SPEED_LARGE选项是你想要的:

#!/usr/bin/env perl

use strict;
use warnings;
use feature ':5.10';
use WWW::Curl::Easy;

# Setting the options
my $curl = WWW::Curl::Easy->new;

$curl->setopt(CURLOPT_HEADER,1);
$curl->setopt(CURLOPT_URL, 'http://www.google.com');
$curl->setopt(CURLOPT_MAX_RECV_SPEED_LARGE, 1);

my $response_body;
open my $fh, ">", \$response_body or die; # presumably this can be a real file as well.
$curl->setopt(CURLOPT_WRITEDATA,$fh);

my $ret = $curl->perform;
die 'Error: '. $curl->strerror($ret) if $ret;

my $response_code = $curl->getinfo(CURLINFO_HTTP_CODE);
say "Received response: $response_body";

在此示例中,我们以每秒一个字节的速度下载Google.非常慢.

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有