scraper シェルで proxy 越え

うちの会社、 proxy を通さないと外へ出れません。

D:\>scraper http://www.yahoo.co.jp
GET http://www.yahoo.co.jp failed: 500 Can't connect to www.yahoo.co.jp:80 (Bad hostname 'www.yahoo.co.jp') at ...

scraper シェルを使う時は次のようにしてます。かなり強引なのでまねしないでください。

D:\>dir | scraper
scraper> $scraper->__ua->proxy(http => 'http://userid:passwd@proxy.example.com:8080')
scraper> $scraper->scrape(URI->new('http://www.yahoo.co.jp'))
scraper> process '//a[@href =~ /^https?:/]', 'hrefs[]' => '@href'
...
scraper> q
scraper> q
D:\>

ローカルでパッチあてちゃえば楽チンです。

D:\Tools\Perl\bin>cat scraper
...
  my $scraper = scraper { run_loop($_[0], $term) };
  $scraper->__ua->env_proxy();                            # koko
  my $result  = $scraper->scrape($stuff);
...
D:\>set HTTP_PROXY=http://userid:passwd@proxy.example.com:8080
D:\>scraper http://www.yahoo.co.jp
scraper>

2007/09/17 追記
Web::Scraper 0.15 にて proxy 対応されました。