http://qs321.pair.com?node_id=108802


in reply to Currency Exchange Grabber

bladx,
I've got a suggestion or two for you:
  1. oanda doesn't like lowercase currency abbreviations. To be on the safe side, I'd do a uc on $cf and $ct.
  2. If someone tries this out, and they're behind a firewall (like me), it's not going to work. For those behind firewalls, I offer the following:
#!/usr/local/bin/perl -w use strict; use LWP::UserAgent; use HTTP::Request::Common; my ($amount,$cf,$ct) = @ARGV[0..2]; my $request = GET "http://www.oanda.com/converter/classic?value=" . "$amount&exch=" . uc($cf) . "&expr=" . uc($ct); $request->proxy_authorization_basic('username','password'); (my $ua = (new LWP::UserAgent))->proxy('http','http://yourproxyhere.co +m:1080'); my $resp = $ua->request($request); die $resp->status_line if ($resp->is_error()); $_ = $resp->{_content}; s/^.*<!-- conversion result starts//s; s/<!-- conversion result ends.*$//s; s/<[^>]+>//g; s/[ \n]+/ /gs; print $_, "\n"
You'll need to change username and password to your username/password for the proxy server. If you don't need to authenticate yourself, you can just skip the proxy_authorization_basic. You'll also need to change http://yourproxyhere.com:1080 to the name/port of your proxy server.
I believe the original currency converter was in the article Five Quick Hacks: Downloading Web Pages, in TPJ #13, by Jon Orwant and Dan Gruhl. The modified code above is based on Downloading Web Pages Through A Proxy Server in TPJ #14, by, um, me.
Happy converting (within the bounds of the Terms of Use pointed out by myocom)!

- robsv