busgogo 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 897decea32acccee8d20ae98fb8f1bd262f248b6
4
- data.tar.gz: 8afa4ddec43df7725c81bae6d13c55142206787a
3
+ metadata.gz: fa9966741d7f0e0ffcaf536e0ab25cc2145bfdb7
4
+ data.tar.gz: 3b2b7936bc095c2b1b6bfb4eef3e50006b5e2668
5
5
  SHA512:
6
- metadata.gz: 7161db07232c565d6937e2d1dd590d74cb77c1cdd2ae93b6b987db4f44cdd35d83b1dfd0c48acea5aaeeeb0952abc2369c8e06d4b910f099df6a6fb8cb19ac10
7
- data.tar.gz: cbf305c668dbb830e2fcdac1f8dd034d107ff2bdd005204aec8a81e79bc0cf88d4b40962fd8f54f1c55530d2b8147f4797c5f1945099384f2b74373ef9fdf1b6
6
+ metadata.gz: f950b8bcc0d5b11c371da8ba9b66c248cc0c5c204c8e9cc70e076b7f9e07a8792c8084200550f69d233492763f9f99196f2ac9ba10c64f9cdc17b037c53c50bf
7
+ data.tar.gz: 6e7390e9c6452d58640bf79f2fb6a89865fdbab0a408d08f8e6c731a472fce2791e23f2816b7c2eb4c9a6395ee75aedd33c837a96ca58d3654184bc88fdcfdc0
data/.gitignore ADDED
@@ -0,0 +1,2 @@
1
+ Gemfile.lock
2
+ *.gem
data/.travis.yml ADDED
@@ -0,0 +1,9 @@
1
+ language: ruby
2
+ rvm:
3
+ - ruby-head
4
+ - ruby-2.1.3
5
+
6
+ branches:
7
+ only:
8
+ - master
9
+ - /^release-.*$/
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+ ruby '2.0.0'
3
+
4
+ # Specify your gem's dependencies in busgogo.gemspec
5
+ gemspec
6
+
7
+ group :test do
8
+ gem 'rake'
9
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,45 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ busgogo (0.2.1)
5
+ mechanize
6
+ nokogiri (>= 1.6.2)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ domain_name (0.5.22)
12
+ unf (>= 0.0.5, < 1.0.0)
13
+ http-cookie (1.0.2)
14
+ domain_name (~> 0.5)
15
+ mechanize (2.7.3)
16
+ domain_name (~> 0.5, >= 0.5.1)
17
+ http-cookie (~> 1.0)
18
+ mime-types (~> 2.0)
19
+ net-http-digest_auth (~> 1.1, >= 1.1.1)
20
+ net-http-persistent (~> 2.5, >= 2.5.2)
21
+ nokogiri (~> 1.4)
22
+ ntlm-http (~> 0.1, >= 0.1.1)
23
+ webrobots (>= 0.0.9, < 0.2)
24
+ mime-types (2.4.3)
25
+ mini_portile (0.6.1)
26
+ net-http-digest_auth (1.4)
27
+ net-http-persistent (2.9.4)
28
+ nokogiri (1.6.4.1)
29
+ mini_portile (~> 0.6.0)
30
+ nokogiri (1.6.4.1-java)
31
+ ntlm-http (0.1.1)
32
+ rake (10.3.2)
33
+ unf (0.1.4)
34
+ unf_ext
35
+ unf (0.1.4-java)
36
+ unf_ext (0.0.6)
37
+ webrobots (0.1.1)
38
+
39
+ PLATFORMS
40
+ java
41
+ ruby
42
+
43
+ DEPENDENCIES
44
+ busgogo!
45
+ rake
data/Output.txt ADDED
@@ -0,0 +1 @@
1
+ ["**************************************", "總公司", "(03)5225151~7", "(03)5257450", "新竹市民族路16-1號", "**************************************", "房屋、土地招租、車廂廣告洽談", "(03)5225151#236、222", "", "", "**************************************", "客服專線", "0800-035800", "", "", "**************************************", "永順旅行社", "(03)5265150~1,(03)5236320", "(03)5265152", "新竹市民族路16號2樓", "**************************************", "遊覽車租賃專線", "(03)5224258", "", "", "**************************************", "新竹客運駕訓班", "(03)5290134", "(03)5201785", "新竹市明湖路484號", "**************************************", "報名專線", "(03)5201127", "", "", "**************************************", "修車廠(湖口廠區)", "(03)5981120", "", "新竹縣湖口鄉鳳山村中華路13號", "**************************************", "車輛檢驗場", "(03)5977249", "", "新竹縣湖口鄉鳳山村中華路13號", "**************************************", "修車廠(牛埔廠區)", "(03)5387500", "(03)5387155", "新竹市牛埔路200號", "**************************************", "修車廠-材料課", "(03)5387157", "", "新竹市牛埔路200號", "**************************************", "新竹總站", "(03)5259599", "(03)5259499", "新竹市中華路二段471號", "**************************************", "新竹總站-新竹北站", "(03)5218841", "", "新竹市中華路二段415號", "**************************************", "新竹總站-清大售票窗口", "(03)5737836", "", "新竹市光復路二段清大售票亭", "**************************************", "市區公車總站", "(03)5268599", "(03)5280500", "新竹市民族路16-1號", "**************************************", "市區公車-民族路站", "(03)5225151#125", "", "新竹市民族路16號", "**************************************", "新竹保養場", "(03)5387159", "", "新竹市牛埔路200號", "**************************************", "產業工會", "(03)5230399", "", "新竹市中華路二段471號2樓", "**************************************", "湖口站", "(03)5992158", "", "新竹縣湖口鄉中山路二段90號", "**************************************", "**************************************", "竹東總站", "(03)5962018", "(03)5963244", "新竹縣竹東鎮東寧路三段135號", "**************************************", "下公館站", "(03)5962347", "", "新竹縣竹東鎮東寧路一段1號", "**************************************", "竹東檢修班", "(03)5951648", "", "新竹縣竹東鎮東寧路一段1號", "**************************************", "**************************************", "關西總站", "(03)5872001", "(03)5872022", "新竹縣關西鎮中興路17號", "**************************************", "關西檢修班", "(03)5870913", "", "新竹縣關西鎮中興路17號", "**************************************", "新埔站", "(03)5882014", "", "新竹縣新埔鎮中正路221號", "**************************************", "**************************************", "中壢總站", "(03)4258812", "(03)4253121", "桃園縣中壢市建國路105號", "**************************************", "中壢北站", "(03)4253122", "", "桃園縣中壢市元化路2-36號", "**************************************", "中壢檢修班", "(03)4226198", "", "桃園縣中壢市中和路23號", "**************************************", "龍潭站", "(03)4792007", "", "桃園縣龍潭鄉北龍路13號", "**************************************", "楊梅站", "(03)4782412", "(03)4884756", "桃園縣楊梅鎮楊新北路3號", "**************************************", "楊梅保養場", "(03)4780311", "(03)4851256", "桃園縣楊梅鎮楊新北路3號", "**************************************", "**************************************", "苗栗總站", "(037)277981~3", "(037)278701", "苗栗縣苗栗市為公路8號", "**************************************", "苗栗總站-大湖駐在站", "(037)991017", "", "苗栗縣大湖鄉信義路15-1號", "**************************************", "苗栗保養場", "(037)263614", "(037)262460", "苗栗縣苗栗市中華路底台肥停車場", "**************************************", "**************************************", "新竹總站", "(03)5259599", "(03)5259499", "新竹市中華路二段471號", "**************************************", "新竹總站-清大售票窗口", "(03)5737836", "", "新竹市光復路二段清大售票亭", "**************************************", "桃園地區_楊梅站", "(03)4782412", "(03)4884756", "桃園縣楊梅鎮楊新北路3號", "**************************************", "**************************************", "新竹總站", "(03)5259599", "(03)5259499", "新竹市中華路二段471號", "**************************************", "新竹總站-新竹北站", "(03)5218841", "", "新竹市中華路二段415號", "**************************************", "新竹地區_湖口站", "(03)5992158", "", "新竹縣湖口鄉中山路二段90號", "**************************************", "竹東地區_竹東總站", "(03)5962018", "(03)5963244", "新竹縣竹東鎮東寧路三段135號", "**************************************", "竹東地區_下公館站", "(03)5962347", "", "新竹縣竹東鎮東寧路一段1號", "**************************************", "關西地區_關西總站", "(03)5872001", "(03)5872022", "新竹縣關西鎮中興路17號", "**************************************", "關西地區_新埔站", "(03)5882014", "", "新竹縣新埔鎮中正路221號", "**************************************", "桃園地區_中壢總站", "(03)4258812", "(03)4253121", "桃園縣中壢市建國路105號", "**************************************", "桃園地區_中壢北站", "(03)4253122", "", "桃園縣中壢市元化路2-36號", "**************************************", "龍潭站", "(03)4792007", "", "桃園縣龍潭鄉北龍路13號", "**************************************", "桃園地區_楊梅站", "(03)4782412", "(03)4884756", "桃園縣楊梅鎮楊新北路3號", "**************************************", "苗栗地區_苗栗總站", "(037)277981~3", "(037)278701", "苗栗縣苗栗市為公路8號", "**************************************", "苗栗總站-大湖駐在站", "(037)991017", "", "苗栗縣大湖鄉信義路15-1號", "**************************************", "**************************************", "新竹地區_市區公車站", "(03)5268599", "(03)5280500", "新竹市民族路16-1號", "**************************************", "新竹地區_民族路站", "(03)5225151#125", "", "新竹市民族路16號", "**************************************", "**************************************", "桃園地區_楊梅站", "(03)4782412", "(03)4884756", "桃園縣楊梅鎮楊新北路3號", "**************************************"]
data/Procfile ADDED
@@ -0,0 +1 @@
1
+ web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
data/README.md ADDED
@@ -0,0 +1,39 @@
1
+ ##BusGoGo
2
+ ##( Week4 Homework )
3
+
4
+
5
+ ###Description ( Hsinzhu Bus Website )
6
+
7
+ We use *Hsinzhu Bus Website* because we often take hsinzhu bus to somewhere.
8
+ Everytime we are heading for somewhere, we go to their website(http://www.hcbus.com.tw/) to get information about their service station, time, and route.
9
+ Therefore, we think it will be convenience for us to use web scraper to get specific information we want.
10
+
11
+ By the way, this website dosen't provide API and need not log in.
12
+
13
+ ###Files
14
+
15
+ 1) Class file : busgogo.rb <br/>
16
+ 2) Application file : executable.rb <br/>
17
+ 3) Gemfile : Gemfile<br/>
18
+
19
+ ###Example Code
20
+
21
+ Usage : ruby executable.rb [number]
22
+
23
+ 1) ruby executable.rb [number] <br/>
24
+ 2) ruby executable.rb 1 <br/>
25
+ Save HsinZhu Bus Website structure into a file (Structure.txt) <br/>
26
+ 3) ruby executable.rb 2 <br/>
27
+ Show HsinZhu Bus Station. <br/>
28
+ 4) ruby executable.rb 3 <br/>
29
+ Get bus stataion information in detail. <br/>
30
+ 5) ruby executable.rb 4 <br/>
31
+ Get file (bus stataion information)bus(Output.txt).
32
+ ###Authors
33
+
34
+ Mavis Cheng (Cheng SyunWei), Yen Wei ,Wu ChiaChun
35
+
36
+ ### For Authors
37
+
38
+ DownLoad
39
+ SSH : git clone git@github.com:mavischeng/BusGoGo.git
data/Rakefile ADDED
@@ -0,0 +1,10 @@
1
+ require 'rake/testtask'
2
+
3
+ task :default => [:spec]
4
+
5
+ desc 'Run specs'
6
+ task :spec do
7
+ sh 'ruby -I lib spec/minitest.rb'
8
+ sh 'rubocop ./lib/busgogo.rb'
9
+ sh 'rubocop ./bin/executable.rb'
10
+ end
data/Structure.txt ADDED
@@ -0,0 +1,542 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5
+ <title>新竹客運</title>
6
+ <style type="text/css">
7
+ <!--
8
+ body {
9
+ background-image: url(images/2-1.gif);
10
+ margin-left: 0px;
11
+ margin-top: 0px;
12
+ }
13
+ -->
14
+ </style>
15
+ <script src="Scripts/swfobject_modified.js" type="text/javascript"></script>
16
+ <script type="text/javascript">
17
+ <!--
18
+ function MM_swapImgRestore() { //v3.0
19
+ var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
20
+ }
21
+ function MM_preloadImages() { //v3.0
22
+ var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
23
+ var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
24
+ if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
25
+ }
26
+
27
+ function MM_findObj(n, d) { //v4.01
28
+ var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
29
+ d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
30
+ if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
31
+ for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
32
+ if(!x && d.getElementById) x=d.getElementById(n); return x;
33
+ }
34
+
35
+ function MM_swapImage() { //v3.0
36
+ var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
37
+ if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
38
+ }
39
+ //-->
40
+ </script>
41
+ <link href="css/yafen-style.css" rel="stylesheet" type="text/css">
42
+ <link href="css/news.css" rel="stylesheet" type="text/css">
43
+ </head>
44
+
45
+ <body onload="MM_preloadImages('images/index/over_03.gif','images/index/over_04.gif','images/index/over_05.gif','images/index/over_06.gif','images/index/over_07.gif','images/index/over_08.gif')">
46
+ <table width="996" border="0" align="center" cellpadding="0" cellspacing="0">
47
+ <tr>
48
+ <td align="left" valign="top"><object id="FlashID" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="996" height="324">
49
+ <param name="movie" value="swf/01.swf">
50
+ <param name="quality" value="high">
51
+ <param name="wmode" value="opaque">
52
+ <param name="swfversion" value="8.0.35.0">
53
+ <!-- 此 param 標籤會提示使用 Flash Player 6.0 r65 和更新版本的使用者下載最新版本的 Flash Player。如果您不想讓使用者看到這項提示,請將其刪除。 -->
54
+ <param name="expressinstall" value="Scripts/expressInstall.swf">
55
+ <!-- 下一個物件標籤僅供非 IE 瀏覽器使用。因此,請使用 IECC 將其自 IE 隱藏。 -->
56
+ <!--[if !IE]>-->
57
+ <object type="application/x-shockwave-flash" data="swf/01.swf" width="996" height="324">
58
+ <!--<![endif]-->
59
+ <param name="quality" value="high">
60
+ <param name="wmode" value="opaque">
61
+ <param name="swfversion" value="8.0.35.0">
62
+ <param name="expressinstall" value="Scripts/expressInstall.swf">
63
+ <!-- 瀏覽器會為使用 Flash Player 6.0 和更早版本的使用者顯示下列替代內容。 -->
64
+ <div>
65
+ <h4>這個頁面上的內容需要較新版本的 Adobe Flash Player。</h4>
66
+ <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="取得 Adobe Flash Player" width="112" height="33"></a></p>
67
+ </div>
68
+ <!--[if !IE]>-->
69
+ </object>
70
+ <!--<![endif]-->
71
+ </object></td>
72
+ </tr>
73
+ <tr>
74
+ <td align="left" valign="top"><table width="996" border="0" cellspacing="0" cellpadding="0">
75
+ <tr>
76
+ <td width="86" align="left" valign="top"><img src="images/index/index_02.gif" width="86" height="55"></td>
77
+ <td width="156" align="left" valign="top"><a href="big5/about.asp" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image3','','images/index/over_03.gif',1)"><img src="images/index/index_03.gif" alt="關於竹客" name="Image3" width="156" height="55" border="0" id="Image3"></a></td>
78
+ <td width="126" align="left" valign="top"><a href="big5/information.asp" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image4','','images/index/over_04.gif',1)"><img src="images/index/index_04.gif" alt="乘車資訊" name="Image4" width="126" height="55" border="0" id="Image4"></a></td>
79
+ <td width="127" align="left" valign="top"><a href="big5/service.asp" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image5','','images/index/over_05.gif',1)"><img src="images/index/index_05.gif" alt="服務據點" name="Image5" width="127" height="55" border="0" id="Image5"></a></td>
80
+ <td width="125" align="left" valign="top"><a href="big5/hire.asp" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image6','','images/index/over_06.gif',1)"><img src="images/index/index_06.gif" alt="招租訊息" name="Image6" width="125" height="55" border="0" id="Image6"></a></td>
81
+ <td width="126" align="left" valign="top"><a href="big5/job.asp" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image7','','images/index/over_07.gif',1)"><img src="images/index/index_07.gif" alt="人才招募" name="Image7" width="126" height="55" border="0" id="Image7"></a></td>
82
+ <td width="76" align="left" valign="top"><a href="big5/contact.asp" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image8','','images/index/over_08.gif',1)"><img src="images/index/index_08.gif" alt="與我聯絡" name="Image8" width="181" height="55" border="0" id="Image8"></a></td>
83
+ <td width="174" align="left" valign="top"><img src="images/index/index_09.gif" width="69" height="55"></td>
84
+ </tr>
85
+ </table></td>
86
+ </tr>
87
+ <tr>
88
+ <td align="left" valign="top"><img src="images/index/index_10.gif" width="996" height="27"></td>
89
+ </tr>
90
+ <tr>
91
+ <td align="left" valign="top" bgcolor="#FFFFFF"><table width="996" border="0" cellspacing="0" cellpadding="0">
92
+ <tr>
93
+ <td width="87" align="left" valign="top"><img src="images/index/index_11.gif" alt="" width="87" height="179"></td>
94
+ <td width="154" align="left" valign="top"><table width="154" border="0" cellspacing="0" cellpadding="0">
95
+ <tr>
96
+ <td align="left" valign="top"><a href="big5/ic.asp"><img src="images/index/index_12.gif" alt="IC票證服務" width="154" height="43" border="0"></a></td>
97
+ </tr>
98
+ <tr>
99
+ <td height="9" align="left" valign="top"></td>
100
+ </tr>
101
+ <tr>
102
+ <td align="left" valign="top"><a href="big5/Business.asp"><img src="images/index/index_24.gif" alt="大客車租賃業務" width="154" height="43" border="0"></a></td>
103
+ </tr>
104
+ <tr>
105
+ <td height="9" align="left" valign="top"></td>
106
+ </tr>
107
+ <tr>
108
+ <td align="left" valign="top"><a href="big5/check.asp"><img src="images/index/index_28.gif" alt="對外大小車輛維修檢驗服務" width="154" height="43" border="0"></a></td>
109
+ </tr>
110
+ <tr>
111
+ <td height="9" align="left" valign="top"></td>
112
+ </tr>
113
+ <tr>
114
+ <td align="left" valign="top"><a href="big5/activite.asp"><img src="images/index/index_35.gif" alt="活動專區" width="154" height="43" border="0"></a></td>
115
+ </tr>
116
+
117
+ <tr>
118
+ <td height="9" align="left" valign="top"></td>
119
+ </tr>
120
+ <tr>
121
+ <td align="left" valign="top">
122
+ <a href="http://www.hcbus.com.tw/inquery/" target="_blank">
123
+ <img src="upload/LeftCom/5.gif" alt="" width="154" border="0">
124
+ </a>
125
+ </td>
126
+ </tr>
127
+
128
+ <tr>
129
+ <td height="9" align="left" valign="top"></td>
130
+ </tr>
131
+ <tr>
132
+ <td align="left" valign="top">
133
+ <a href="http://www.hcbus.com.tw/big5/information-4.asp" target="_blank">
134
+ <img src="upload/LeftCom/3.gif" alt="" width="154" border="0">
135
+ </a>
136
+ </td>
137
+ </tr>
138
+
139
+ <tr>
140
+ <td height="9" align="left" valign="top"></td>
141
+ </tr>
142
+ <tr>
143
+ <td align="left" valign="top">
144
+ <a href="http://blog.xuite.net/an135843/twblog" target="_blank">
145
+ <img src="upload/LeftCom/4.jpg" alt="" width="154" border="0">
146
+ </a>
147
+ </td>
148
+ </tr>
149
+
150
+ </table></td>
151
+ <td width="59" align="left" valign="top"> </td>
152
+ <td width="466" align="left" valign="top"><table width="466" border="0" cellspacing="0" cellpadding="0">
153
+ <tr>
154
+ <td align="left" valign="top"><img src="images/index/index_14.gif" alt="最新消息" width="466" height="40" border="0" usemap="#Map"></td>
155
+ </tr>
156
+ <tr>
157
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
158
+
159
+ <tr>
160
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
161
+ <tr>
162
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
163
+ <tr>
164
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
165
+ <td width="19%" align="left" valign="top" class="news_date">2014/10/8</td>
166
+ <td width="60%" align="left" valign="top"><a href="big5/news_in.asp?id=125&amp;page=">(中壢永樂路改道)配合「臺灣桃園機場...</a></td>
167
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
168
+ </tr>
169
+ </table></td>
170
+ </tr>
171
+ <tr>
172
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
173
+ </tr>
174
+ </table></td>
175
+ </tr>
176
+
177
+ <tr>
178
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
179
+ <tr>
180
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
181
+ <tr>
182
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
183
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/30</td>
184
+ <td width="60%" align="left" valign="top"><a href="big5/news_in.asp?id=121&amp;page=">自103年10月1日起快捷5號公車繞...</a></td>
185
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
186
+ </tr>
187
+ </table></td>
188
+ </tr>
189
+ <tr>
190
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
191
+ </tr>
192
+ </table></td>
193
+ </tr>
194
+
195
+ <tr>
196
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
197
+ <tr>
198
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
199
+ <tr>
200
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
201
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/27</td>
202
+ <td width="60%" align="left" valign="top"><a href="big5/news_in.asp?id=120&amp;page=">103年10月1日起辦理55、55區...</a></td>
203
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
204
+ </tr>
205
+ </table></td>
206
+ </tr>
207
+ <tr>
208
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
209
+ </tr>
210
+ </table></td>
211
+ </tr>
212
+
213
+ <tr>
214
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
215
+ <tr>
216
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
217
+ <tr>
218
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
219
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/25</td>
220
+ <td width="60%" align="left" valign="top"><a href="big5/news_in.asp?id=122&amp;page=">自103.10.1起新竹縣快捷5號公...</a></td>
221
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
222
+ </tr>
223
+ </table></td>
224
+ </tr>
225
+ <tr>
226
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
227
+ </tr>
228
+ </table></td>
229
+ </tr>
230
+
231
+ <tr>
232
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
233
+ <tr>
234
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
235
+ <tr>
236
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
237
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/12</td>
238
+ <td width="60%" align="left" valign="top"><a href="big5/news_in.asp?id=117&amp;page=">103.9.14起【9010 新竹-...</a></td>
239
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
240
+ </tr>
241
+ </table></td>
242
+ </tr>
243
+ <tr>
244
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
245
+ </tr>
246
+ </table></td>
247
+ </tr>
248
+
249
+ <tr>
250
+ <td align="left" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
251
+ <tr>
252
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
253
+ <tr>
254
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
255
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/12</td>
256
+ <td width="60%" align="left" valign="top"><a href="big5/news_in.asp?id=116&amp;page=">103.9.15起新竹市免費公車-7...</a></td>
257
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
258
+ </tr>
259
+ </table></td>
260
+ </tr>
261
+ <tr>
262
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
263
+ </tr>
264
+ </table></td>
265
+ </tr>
266
+
267
+ </table></td>
268
+ </tr>
269
+ <tr>
270
+ <td align="left" valign="top"><img src="images/index/index_34.gif" alt="失物招領" width="466" height="49" border="0" usemap="#Map2"></td>
271
+ </tr>
272
+ <tr>
273
+ <td align="center" valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
274
+
275
+ <tr>
276
+ <td align="left" valign="top"><table width="95%" border="0" align="left" cellpadding="0" cellspacing="0">
277
+ <tr>
278
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
279
+ <tr>
280
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
281
+ <td width="19%" align="left" valign="top" class="news_date">2014/10/12</td>
282
+ <td width="60%" align="left" valign="top"><a href="big5/lost.asp">拾擭錢包</a></td>
283
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
284
+ </tr>
285
+ </table></td>
286
+ </tr>
287
+ <tr>
288
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
289
+ </tr>
290
+ </table></td>
291
+ </tr>
292
+
293
+ <tr>
294
+ <td align="left" valign="top"><table width="95%" border="0" align="left" cellpadding="0" cellspacing="0">
295
+ <tr>
296
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
297
+ <tr>
298
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
299
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/29</td>
300
+ <td width="60%" align="left" valign="top"><a href="big5/lost.asp">拾擭皮夾(咖啡色)</a></td>
301
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
302
+ </tr>
303
+ </table></td>
304
+ </tr>
305
+ <tr>
306
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
307
+ </tr>
308
+ </table></td>
309
+ </tr>
310
+
311
+ <tr>
312
+ <td align="left" valign="top"><table width="95%" border="0" align="left" cellpadding="0" cellspacing="0">
313
+ <tr>
314
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
315
+ <tr>
316
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
317
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/26</td>
318
+ <td width="60%" align="left" valign="top"><a href="big5/lost.asp">拾擭小布包</a></td>
319
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
320
+ </tr>
321
+ </table></td>
322
+ </tr>
323
+ <tr>
324
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
325
+ </tr>
326
+ </table></td>
327
+ </tr>
328
+
329
+ <tr>
330
+ <td align="left" valign="top"><table width="95%" border="0" align="left" cellpadding="0" cellspacing="0">
331
+ <tr>
332
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
333
+ <tr>
334
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
335
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/24</td>
336
+ <td width="60%" align="left" valign="top"><a href="big5/lost.asp">拾擭手提包(土黃色)</a></td>
337
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
338
+ </tr>
339
+ </table></td>
340
+ </tr>
341
+ <tr>
342
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
343
+ </tr>
344
+ </table></td>
345
+ </tr>
346
+
347
+ <tr>
348
+ <td align="left" valign="top"><table width="95%" border="0" align="left" cellpadding="0" cellspacing="0">
349
+ <tr>
350
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
351
+ <tr>
352
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
353
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/8</td>
354
+ <td width="60%" align="left" valign="top"><a href="big5/lost.asp">拾擭錢包</a></td>
355
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
356
+ </tr>
357
+ </table></td>
358
+ </tr>
359
+ <tr>
360
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
361
+ </tr>
362
+ </table></td>
363
+ </tr>
364
+
365
+ <tr>
366
+ <td align="left" valign="top"><table width="95%" border="0" align="left" cellpadding="0" cellspacing="0">
367
+ <tr>
368
+ <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
369
+ <tr>
370
+ <td width="5%" align="center" valign="middle"><img src="images/icon_24.gif" alt="" width="7" height="6"></td>
371
+ <td width="19%" align="left" valign="top" class="news_date">2014/9/8</td>
372
+ <td width="60%" align="left" valign="top"><a href="big5/lost.asp">拾擭NOKLA手機</a></td>
373
+ <td width="16%" align="left" valign="top"><img src="images/icon_21.gif" alt="" width="28" height="10"></td>
374
+ </tr>
375
+ </table></td>
376
+ </tr>
377
+ <tr>
378
+ <td align="left" valign="top"><img src="images/line.gif" alt="" width="418" height="13"></td>
379
+ </tr>
380
+ </table></td>
381
+ </tr>
382
+
383
+ </table></td>
384
+ </tr>
385
+ </table></td>
386
+ <td width="154" align="left" valign="top"><table width="154" border="0" cellspacing="0" cellpadding="0">
387
+
388
+ <tr>
389
+ <td align="left" valign="top">
390
+ <a href="http://www.twnsc.com.tw/" target="_blank">
391
+ <img src="upload/RightCOm/1.gif" alt="" width="154" height="47" border="0">
392
+ </a>
393
+ </td>
394
+ </tr>
395
+ <tr>
396
+ <td height="9" align="left" valign="top"></td>
397
+ </tr>
398
+
399
+ <tr>
400
+ <td align="left" valign="top">
401
+ <a href="http://www.taiwanbus.tw/Default.aspx" target="_blank">
402
+ <img src="upload/RightCOm/2.gif" alt="" width="154" height="47" border="0">
403
+ </a>
404
+ </td>
405
+ </tr>
406
+ <tr>
407
+ <td height="9" align="left" valign="top"></td>
408
+ </tr>
409
+
410
+ <tr>
411
+ <td align="left" valign="top">
412
+ <a href="http://www.fwtravel.com.tw/" target="_blank">
413
+ <img src="upload/RightCOm/3.gif" alt="" width="154" height="47" border="0">
414
+ </a>
415
+ </td>
416
+ </tr>
417
+ <tr>
418
+ <td height="9" align="left" valign="top"></td>
419
+ </tr>
420
+
421
+ <tr>
422
+ <td align="left" valign="top">
423
+ <a href="http://hcbustds.com.tw/" target="_blank">
424
+ <img src="upload/RightCOm/4.gif" alt="" width="154" height="47" border="0">
425
+ </a>
426
+ </td>
427
+ </tr>
428
+ <tr>
429
+ <td height="9" align="left" valign="top"></td>
430
+ </tr>
431
+
432
+ <tr>
433
+ <td align="left" valign="top">
434
+ <a href="http://www.hcbus.com.tw/tour.htm" target="_blank">
435
+ <img src="upload/RightCOm/10.png" alt="" width="154" height="47" border="0">
436
+ </a>
437
+ </td>
438
+ </tr>
439
+ <tr>
440
+ <td height="9" align="left" valign="top"></td>
441
+ </tr>
442
+
443
+ <tr>
444
+ <td align="left" valign="top">
445
+ <a href="http://web.hsinchu.gov.tw/tourism/" target="_blank">
446
+ <img src="upload/RightCOm/8.jpg" alt="" width="154" height="47" border="0">
447
+ </a>
448
+ </td>
449
+ </tr>
450
+ <tr>
451
+ <td height="9" align="left" valign="top"></td>
452
+ </tr>
453
+
454
+ <tr>
455
+ <td align="left" valign="top">
456
+ <a href="http://dep-tourism.hccg.gov.tw/web/Home" target="_blank">
457
+ <img src="upload/RightCOm/7.jpg" alt="" width="154" height="47" border="0">
458
+ </a>
459
+ </td>
460
+ </tr>
461
+ <tr>
462
+ <td height="9" align="left" valign="top"></td>
463
+ </tr>
464
+
465
+ <tr>
466
+ <td align="left" valign="top">
467
+ <a href="http://www.hcbus.com.tw/modify/%E6%80%A7%E9%A8%B7%E6%93%BE%E9%98%B2%E6%B2%BB%E6%8E%AA%E6%96%BD%E8%BE%A6%E6%B3%95%E5%BC%B5%E8%B2%BC%E7%B6%B2%E7%AB%99(103.9.1).doc" target="_blank">
468
+ <img src="upload/RightCOm/11.png" alt="" width="154" height="47" border="0">
469
+ </a>
470
+ </td>
471
+ </tr>
472
+ <tr>
473
+ <td height="9" align="left" valign="top"></td>
474
+ </tr>
475
+
476
+ <tr>
477
+ <td align="left" valign="top">
478
+ <a href="https://www.youtube.com/watch?v=uz9RJzl3hYs" target="_blank">
479
+ <img src="upload/RightCOm/9.gif" alt="" width="154" height="47" border="0">
480
+ </a>
481
+ </td>
482
+ </tr>
483
+ <tr>
484
+ <td height="9" align="left" valign="top"></td>
485
+ </tr>
486
+
487
+ <tr>
488
+ <td align="left" valign="top">
489
+ <a href="http://www.railway.gov.tw/tw/" target="_blank">
490
+ <img src="upload/RightCOm/5.gif" alt="" width="154" height="47" border="0">
491
+ </a>
492
+ </td>
493
+ </tr>
494
+ <tr>
495
+ <td height="9" align="left" valign="top"></td>
496
+ </tr>
497
+
498
+ <tr>
499
+ <td align="left" valign="top">
500
+ <a href="http://www.thsrc.com.tw" target="_blank">
501
+ <img src="upload/RightCOm/6.gif" alt="" width="154" height="47" border="0">
502
+ </a>
503
+ </td>
504
+ </tr>
505
+ <tr>
506
+ <td height="9" align="left" valign="top"></td>
507
+ </tr>
508
+
509
+ </table></td>
510
+ <td width="89" align="left" valign="top"><img src="images/index/index_16.gif" alt="" width="89" height="152"></td>
511
+ </tr>
512
+ </table></td>
513
+ </tr>
514
+
515
+ <tr>
516
+ <td height="65" align="center" valign="middle" bgcolor="#F3F3F3"><table width="80%" border="0">
517
+ <tr>
518
+ <td height="25" align="center" valign="middle">地址:新竹市民族路16-1號                TEL:03-5225151~8                 FAX:03-5257450<br>
519
+ </td>
520
+ </tr>
521
+ <tr>
522
+ <td height="25" align="center" valign="middle">本站圖文係新竹汽車客運股份有限公司版權所有‧盜用必究 IE8.0獲得最佳瀏覽效果</td>
523
+ </tr>
524
+ </table></td>
525
+ </tr>
526
+
527
+ </table>
528
+
529
+ <map name="Map" id="Map">
530
+ <area shape="rect" coords="380,3,433,26" href="big5/news.asp">
531
+ </map>
532
+
533
+ <map name="Map2" id="Map2">
534
+ <area shape="rect" coords="382,16,426,39" href="big5/lost.asp">
535
+ </map>
536
+ <script type="text/javascript">
537
+ <!--
538
+ swfobject.registerObject("FlashID");
539
+ //-->
540
+ </script>
541
+ </body>
542
+ </html>
data/bin/executable.rb ADDED
@@ -0,0 +1,26 @@
1
+ require 'busgogo'
2
+ usage = []
3
+ usage << "\n Usage : executable [number] .\n"
4
+ usage << "\nNumber 1 : Hsinchu bus\' stations."
5
+ usage << "\n Number 2 : Get bus stataion names."
6
+ usage << "\n Number 3 : Get bus stataion information in detail."
7
+ usage << "\n Number 4 : Get file (bus stataion information)bus."
8
+ fail ArgumentError, usage if ARGV.count != 1
9
+ number = ARGV[0]
10
+ scmachine = WebScraper.new
11
+ structure_output = scmachine.getwebstructure('http://www.hcbus.com.tw')
12
+ bus_station = scmachine.busstation
13
+ information = scmachine.tmp_selectstation
14
+ case number
15
+ when '1'
16
+ File.write('Structure.txt', structure_output)
17
+ when '2'
18
+ bus_station.each { |value| puts value }
19
+ when '3'
20
+ puts information
21
+ when '4'
22
+ File.write('Output.txt', information)
23
+ puts 'Please check data in Output.txt file'
24
+ else
25
+ puts '(1~4) Error input : you key in No ' << number.to_s
26
+ end
data/busgogo.gemspec ADDED
@@ -0,0 +1,16 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = 'busgogo'
5
+ s.version = '0.2.3'
6
+ s.date = '2014-11-09'
7
+ s.add_runtime_dependency 'nokogiri', '>= 1.6.2' # v.1.6.2 has documented problem
8
+ s.add_runtime_dependency 'mechanize'
9
+ s.summary = "BusGoGo"
10
+ s.description = "We use Hsinzhu Bus Website because we often take hsinzhu bus to somewhere. Everytime we are heading for somewhere, we go to their website(http://www.hcbus.com.tw/) to get information about their service station, time, and route. Therefore, we think it will be convenience for us to use web scraper to get specific information we want."
11
+ s.authors = ["Mavis Cheng (Cheng SyunWei), Yen Wei ,Wu ChiaChun"]
12
+ s.email = 'wei.yen.0718@gmail.com'
13
+ s.files = `git ls-files`.split("\n")
14
+ s.homepage =
15
+ 'http://rubygems.org/gems/busgogo'
16
+ end
data/lib/busgogo.rb ADDED
@@ -0,0 +1,78 @@
1
+ require 'open-uri'
2
+ require 'nokogiri'
3
+ require 'mechanize'
4
+ # Class that can be used to grab data from website(http://www.hcbus.com.tw/)
5
+ class WebScraper
6
+ # @data stores information
7
+ attr_accessor :data
8
+ attr_accessor :station
9
+ attr_accessor :page
10
+ attr_accessor :output
11
+ attr_accessor :url
12
+
13
+ def initialize
14
+ @data = data
15
+ @station = station
16
+ @page = page
17
+ @output = output
18
+ @url = url
19
+ end
20
+
21
+ def getwebstructure(website)
22
+ web_data = open(website)
23
+ @data = Nokogiri.HTML(web_data)
24
+ end
25
+
26
+ def file_output
27
+ selectstation
28
+ File.write('Output.txt', @output)
29
+ puts "\n\n\nPlease check data in Output.txt file"
30
+ end
31
+
32
+ def busstation
33
+ @url = 'http://www.hcbus.com.tw/big5/service.asp'
34
+ num, @station = 1, {}
35
+ getwebstructure(url)
36
+ @data.css("select[name='jumpMenu'] option").each do |x|
37
+ @station[num] = x.text
38
+ num += 1
39
+ end
40
+ @station
41
+ end
42
+
43
+ def selectdropdown(url, num)
44
+ tmpkey = [], tmpvalue = []
45
+ agent = Mechanize.new
46
+ form = agent.get(url).forms.first
47
+ form.field_with(name: 'jumpMenu').options[num].click
48
+ @page = form.submit
49
+ content = @page.parser.xpath("//table/tr/td[@class='map-style']")
50
+ content2 = @page.parser.xpath("//table/tr/td[@class='map-style'][1]")
51
+ content2.each { |b| tmpkey << b.text.strip }
52
+ content.each { |c| tmpvalue << c.text.strip }
53
+ filehash(tmpvalue, tmpkey)
54
+ end
55
+
56
+ def filehash(value, key)
57
+ value.each do |v|
58
+ key.each do |c|
59
+ @output << '**************************************' if v == c
60
+ end
61
+ @output << v
62
+ end
63
+ @output << '**************************************'
64
+ end
65
+
66
+ def tmp_selectstation
67
+ num, @station, @output = 1, {}, []
68
+ getwebstructure(url)
69
+ @data.css("select[name='jumpMenu'] option").each do |x|
70
+ @station[num] = x.text
71
+ num += 1
72
+ end
73
+ (0...9).each do |i|
74
+ selectdropdown(@url, i)
75
+ end
76
+ @output
77
+ end
78
+ end
data/spec/minitest.rb ADDED
@@ -0,0 +1,45 @@
1
+ require 'minitest/autorun'
2
+ require 'minitest/rg'
3
+ require './lib/busgogo.rb'
4
+
5
+ teststation = {
6
+ '1' => '新竹地區',
7
+ '2' => '竹東地區',
8
+ '3' => '關西地區',
9
+ '4' => '桃園地區',
10
+ '5' => '苗栗地區',
11
+ '6' => '國道班車資訊',
12
+ '7' => '一般公路資訊',
13
+ '8' => '新竹市區公車',
14
+ '9' => '桃園縣市區公車資訊',
15
+ '10' => '免費公車資訊'
16
+ }
17
+
18
+ describe 'station' do
19
+
20
+ before do
21
+ mac = WebScraper.new
22
+ @found = mac.busstation
23
+ end
24
+
25
+ it 'find 新竹地區' do
26
+ @found[8].wont_match "\d"
27
+ end
28
+ it 'find 新竹地區' do
29
+ @found[8].wont_be_empty
30
+ end
31
+ it 'find 苗栗地區' do
32
+ @found[9].wont_be_empty
33
+ end
34
+ it 'find 新竹地區' do
35
+ @found[1].must_equal teststation['1']
36
+ end
37
+
38
+ it 'find 苗栗地區' do
39
+ @found[5].must_equal teststation['5']
40
+ end
41
+
42
+ it 'find 桃園縣市區公車資訊' do
43
+ @found[9].must_equal teststation['9']
44
+ end
45
+ end
metadata CHANGED
@@ -1,70 +1,87 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: busgogo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mavis Cheng (Cheng SyunWei), Yen Wei ,Wu ChiaChun
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2014-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
+ name: nokogiri
14
15
  requirement: !ruby/object:Gem::Requirement
15
16
  requirements:
16
- - - '>='
17
+ - - ">="
17
18
  - !ruby/object:Gem::Version
18
19
  version: 1.6.2
19
- name: nokogiri
20
- prerelease: false
21
20
  type: :runtime
21
+ prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 1.6.2
27
27
  - !ruby/object:Gem::Dependency
28
+ name: mechanize
28
29
  requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - '>='
31
+ - - ">="
31
32
  - !ruby/object:Gem::Version
32
33
  version: '0'
33
- name: mechanize
34
- prerelease: false
35
34
  type: :runtime
35
+ prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- description: We use Hsinzhu Bus Website because we often take hsinzhu bus to somewhere. Everytime we are heading for somewhere, we go to their website(http://www.hcbus.com.tw/) to get information about their service station, time, and route. Therefore, we think it will be convenience for us to use web scraper to get specific information we want.
41
+ description: We use Hsinzhu Bus Website because we often take hsinzhu bus to somewhere.
42
+ Everytime we are heading for somewhere, we go to their website(http://www.hcbus.com.tw/)
43
+ to get information about their service station, time, and route. Therefore, we think
44
+ it will be convenience for us to use web scraper to get specific information we
45
+ want.
42
46
  email: wei.yen.0718@gmail.com
43
47
  executables: []
44
48
  extensions: []
45
49
  extra_rdoc_files: []
46
- files: []
50
+ files:
51
+ - ".gitignore"
52
+ - ".travis.yml"
53
+ - Gemfile
54
+ - Gemfile.lock
55
+ - Output.txt
56
+ - Procfile
57
+ - README.md
58
+ - Rakefile
59
+ - Structure.txt
60
+ - bin/executable.rb
61
+ - busgogo.gemspec
62
+ - lib/busgogo.rb
63
+ - spec/minitest.rb
47
64
  homepage: http://rubygems.org/gems/busgogo
48
65
  licenses: []
49
66
  metadata: {}
50
- post_install_message:
67
+ post_install_message:
51
68
  rdoc_options: []
52
69
  require_paths:
53
70
  - lib
54
71
  required_ruby_version: !ruby/object:Gem::Requirement
55
72
  requirements:
56
- - - '>='
73
+ - - ">="
57
74
  - !ruby/object:Gem::Version
58
75
  version: '0'
59
76
  required_rubygems_version: !ruby/object:Gem::Requirement
60
77
  requirements:
61
- - - '>='
78
+ - - ">="
62
79
  - !ruby/object:Gem::Version
63
80
  version: '0'
64
81
  requirements: []
65
- rubyforge_project:
82
+ rubyforge_project:
66
83
  rubygems_version: 2.4.2
67
- signing_key:
84
+ signing_key:
68
85
  specification_version: 4
69
86
  summary: BusGoGo
70
87
  test_files: []