#!/usr/bin/perl # # �z�i�H�ϥγo���ɮ����I�K�������}������ # �άO�H�թ�r��B�z�� perl �ץ��H�U�{���X :) # #VictorHsieh 2003.02.11 use lib '/home/bbs/bin'; use LocalVars; use vars qw/ %opt %station_num @arg $command $addr/; use strict; $addr = "http://passenger.tra.gov.tw/ap/index.asp"; @arg = split ' ', <STDIN>; map { /(.+)=(.+)/ and $opt{$1} = $2 } grep /.+=.+/, @arg; station_init(); translate(); $command = "MIval=Train_Time&encode=Big5&action=on"; map { $command .= "&$_=$opt{$_}"} keys %opt; exec "$LYNX -dump -assume_charset=big5 -nolist \"$addr?$command\""; # �N page.c �����榡�ର�K�����ҨϥΪ��榡 sub translate{ change_opt('from-station', 'Station1'); change_opt('to-station', 'Station2'); change_opt('from-time', 'From_Time'); change_opt('to-time', 'To_Time'); change_opt('type', 'Type'); change_opt('tt', 'Time'); change_opt('date','Departure_Date'); change_opt('path', 'line'); } # �ഫ�Ѽƪ����ܪk sub change_opt{ my ($old, $new) = @_; if(defined $opt{$old}){ if( $old =~ /station/ ){ $opt{$old} = $station_num{$opt{$old}}; } elsif( $old =~ /type/ ){ $opt{$old} = ($opt{$old} eq 'fast')? 'F' : 'S'; } elsif( $old =~ /tt/ ){ $opt{$old} = ($opt{$old} eq 'start')? 'D' : 'A'; } elsif( $old =~ /date/ ){ my ($sec, $min, $hour, $mday, $mon, $year) = gmtime; $mday = $mday + $opt{$old}; $mon++; $opt{$old} = join '/', ($year+1900, ($mon>9)? $mon : "0$mon", ($mday>9)? $mday : "0$mday"); } elsif( $old =~ /path/ ){ my @line = qw/ mainwest maineast mainsouth pin innerbay gg/; $opt{$old} = $line[$opt{$old}-1]; } $opt{$new} = $opt{$old} and delete $opt{$old}; } } # �U���N�X���� sub station_init{ %station_num = ( "��" => 1001, "�K��" => 1002, "�C��" => 1003, "����" => 1004, "����" => 1005, "�n��" => 1006, "�Q�s" => 1007, "�x�_" => 1008, "�U��" => 1009, "�O��" => 1011, "��L" => 1012, "�s��" => 1013, "�a�q" => 1014, "���" => 1015, "���c" => 1016, "���c" => 1017, "�H��" => 1018, "����" => 1019, "�I��" => 1020, "��f" => 1021, "�s��" => 1022, "�˥_" => 1023, "�s��" => 1025, "���s" => 1026, "�T��" => 1027, "�˫n" => 1028, "�ͤ�" => 1102, "�j�s" => 1104, "���s" => 1105, "�s��" => 1106, "�ըF��" => 1107, "�s�H" => 1108, "�q�]" => 1109, "�b��" => 1110, "��n" => 1111, "�j��" => 1112, "�O����" => 1113, "�M��" => 1114, "�F��" => 1115, "�s��" => 1116, "�j�{" => 1117, "�l��" => 1118, "����" => 1120, "���" => 1202, "���L" => 1203, "�ùt" => 1204, "���Y" => 1205, "�Ф�" => 1206, "�G��" => 1207, "�L��" => 1208, "�ۺh" => 1209, "�椻" => 1210, "��n" => 1211, "���t" => 1212, "�j�L" => 1213, "����" => 1214, "�Ÿq" => 1215, "���W" => 1217, "�n�t" => 1218, "���" => 1219, "�s��" => 1220, "�h��" => 1221, "�L����" => 1222, "����" => 1223, "�ުL" => 1224, "����" => 1225, "�s��" => 1226, "�ñd" => 1227, "�x�n" => 1228, "�O�w" => 1229, "���w" => 1230, "�j��" => 1231, "����" => 1232, "���s" => 1233, "���Y" => 1234, "����" => 1235, "����" => 1236, "����" => 1238, "�j��" => 1239, "�y��" => 1302, "�״I" => 1304, "�]��" => 1305, "�n��" => 1307, "���r" => 1308, "�T�q" => 1310, "���w" => 1314, "�Z��" => 1315, "��" => 1317, "��l" => 1318, "�x��" => 1319, "�Q��" => 1320, "���\\" => 1321, "�j�y" => 1322, "�ӭ�" => 1323, "��s" => 1402, "����" => 1403, "�E����" => 1404, "������" => 1405, "�̪F" => 1406, "�N�w" => 1602, "�Ӿ�" => 1604, "���M" => 1605, "����" => 1606, "�ץ�" => 1607, "�ˤf" => 1608, "�n��" => 1609, "��L" => 1610, "�U�a" => 1611, "���_" => 1612, "�j�I" => 1613, "�I��" => 1614, "��_" => 1615, "���J" => 1616, "�T��" => 1617, "�ɨ�" => 1619, "�w�q" => 1620, "�F��" => 1621, "�F��" => 1622, "�I��" => 1623, "���W" => 1624, "����" => 1625, "���s" => 1626, "���" => 1627, "��M" => 1628, "�緽" => 1629, "����" => 1630, "�s��" => 1631, "�x�F" => 1632, "�ü�" => 1703, "�F�D" => 1704, "�n�D" => 1705, "�Z��" => 1706, "�~��" => 1708, "�M��" => 1709, "�M��" => 1710, "�R�w" => 1711, "�s��" => 1712, "����" => 1713, "�_�H" => 1714, "�Ὤ" => 1715, "�x�x" => 1802, "�|�}�F" => 1803, "���" => 1804, "�Jֻ" => 1805, "�T�I��" => 1806, "�d��" => 1807, "����" => 1808, "�^�d" => 1809, "�ֶ�" => 1810, "�۫�" => 1811, "�j��" => 1812, "�j��" => 1813, "�t�s" => 1814, "�~�D" => 1815, "�Y��" => 1816, "���H" => 1817, "�G��" => 1818, "�|��" => 1819, "�y��" => 1820, "�G��" => 1821, "����" => 1822, "ù�F" => 1823, "�V�s" => 1824, "�s��" => 1825, "Ĭ�D�s��" => 1826, "Ĭ�D" => 1827, "�j��" => 1903, "�Q��" => 1904, "��j" => 1905, "���}" => 1906, "����" => 1907, "�� " => 1908, "�ˤ�" => 2203, "�W��" => 2204, "�˪F" => 2205, "��s" => 2206, "�E�g�Y" => 2207, "�X��" => 2208, "�n�e" => 2209, "���W" => 2210, "�a��" => 2211, "���u" => 2702, "�B��" => 2703, "�s�u" => 2704, "����" => 2705, "����" => 2706, "���L" => 2707, ); }