File: linuxtrade.pe

package info (click to toggle)
linuxtrade 3.65-6
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 2,880 kB
  • ctags: 1,969
  • sloc: ansic: 30,091; sh: 2,278; perl: 566; makefile: 126
file content (45 lines) | stat: -rwxr-xr-x 955 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/usr/bin/perl

my $symbol = $ARGV[0] || "INTC";
$symbol =~ tr/A-Z/a-z/;
$s = substr($symbol, 0, 1);
my $Symbol = $symbol;
$Symbol =~ tr/a-z/A-Z/;

my $junk;
my $pe;
my $fwdpe;
my $pb;
my $ps;
my $when;

my $url = "http://finance.yahoo.com/q/ks?s=$symbol";

open (COMMAND, "lynx -width=9999999 -dump -connect_timeout=10 \"$url\" |")
	|| die "Can't open p/e '$url'\n";

while (<COMMAND>) {
	chop;
	# print "$_\n";

	if ($_ =~ "Trailing P/E" && !$pe) {
		($j, $j, $j, $j, $pe) = split(/\s+/);
	}
	if ($_ =~ "Forward P/E" && !$fwdpe) {
		($j, $j, $j, $j, $j, $fwdpe) = split(/\s+/);
	}
	if ($_ =~ "Price/Book" && !$pb) {
		($j, $j, $j, $pb) = split(/\s+/);
	}
	if ($_ =~ "Price/Sales" && !$ps) {
		($j, $j, $j, $ps) = split(/\s+/);
	}
	if ($_ =~ "Most Recent Quarter .mrq") {
		($j, $j, $j, $j, $j, $when) = split(/\s+/);
	}
}
close (COMMAND);

printf "%s: P/E: %s (%s fwd), Price/Book: %s, Price/Sales: %s (%s)\n",
	$Symbol, $pe, $fwdpe, $pb, $ps,
	$when;