sina_stock_interface 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7725ba05160b937fad37e8c117cde2efb3613302
4
- data.tar.gz: 04d5555058b463a4a69355bd7892b159e87f0401
3
+ metadata.gz: 0a0add83cace0a5ec5f1bf19dee2fdd1b26fdb6b
4
+ data.tar.gz: c18b002b3c99febe71c99b3920168fd4b0358d81
5
5
  SHA512:
6
- metadata.gz: 872ddb3208449ad68fee6e94ae47b13a0ccb211acdd3f64d89e72552d7cbeb08d33a647d9ccb0169de80b6c80171eef9ff2af5e900ae133c5046363489d82807
7
- data.tar.gz: 441230583ac4f96d132f7a05414d80c0fbc5816e7bde984fa38f751de78a3a374c587a834b9ea2c2c524854cc63f3a5e0a60f9698c38fa5ea845bd1cfc8af96f
6
+ metadata.gz: db556cb5aa47f81ee2e063dd6bbb34974229ffc756cd455f4dbb6d2912e7cba2cc3a4183bdc447218f668623fb6b9065f62ad7f9f1d05f35f744dc9920a56d9a
7
+ data.tar.gz: 7d0fa8e6704c3aafc4c3352614f3e30389d7f532691cad314d5954348b29a031cd27a0fb89d594e47d089e299c0092b30c0f17eee5bacd166464b1996b281e2a
@@ -1,3 +1,3 @@
1
1
  module SinaStockInterface
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -120,16 +120,39 @@ require "open-uri"
120
120
  "lyBg"
121
121
  ]
122
122
  ]
123
+ 数据结构(搜索):
124
+ [
125
+ [
126
+ "300123",
127
+ "11", 数据类型(11为股票,具体未知)
128
+ "300123",
129
+ "sz300123", 股票ID
130
+ "太阳鸟", 股票名称
131
+ "tyn"
132
+ ], [
133
+ "000123",
134
+ "11",
135
+ "000123",
136
+ "sh000123",
137
+ "180动态",
138
+ "180dt"
139
+ ], [
140
+ "600123",
141
+ "11",
142
+ "600123",
143
+ "sh600123",
144
+ "兰花科创",
145
+ "lhkc"
146
+ ]
147
+ ]
123
148
  =end
124
149
 
125
150
  module SinaStockInterface
126
151
  class Data
127
152
  StockDataUrl = 'http://hq.sinajs.cn/list='
128
-
129
153
  def self.format_data(request)
130
154
  request.scan(/var hq_str_(\w*)="(\S*)";/).collect{|x| x.join(",").split(",")}
131
155
  end
132
-
133
156
  def self.get_stock_data_by_id(stock_id)
134
157
  url = "#{StockDataUrl}#{stock_id}"
135
158
  request = open(url).read.encode(Encoding.find("UTF-8"),Encoding.find("GBK"))
@@ -140,23 +163,33 @@ module SinaStockInterface
140
163
  url = "#{StockDataUrl}#{stock_index_id}"
141
164
  request = open(url).read.encode(Encoding.find("UTF-8"),Encoding.find("GBK"))
142
165
  format_data(request)
143
- end
166
+ end
144
167
  end
168
+
145
169
  class Info
146
170
  SSEUrl = 'http://www.sse.com.cn/js/common/ssesuggestdata.js'
147
171
  SZSEUrl = 'http://www.szse.cn/szseWeb/FrontController.szse?ACTIONID=8&CATALOGID=1110&TABKEY=tab1&ENCODE=1'
148
172
  def self.get_sse_info
149
- format = /val:"(\w*)",val2:"(\S*)",val3:"(\w*)"/
173
+ format = /val:"(\w*)",val2:"(\D*\S*)",val3:"(\D*\w*)"/
150
174
  request = open(SSEUrl).read.force_encoding('UTF-8')
151
175
  request.scan(format)
152
176
  end
153
-
154
177
  def self.get_szse_info
155
178
  format = /style='mso-number-\w*\D*(\w*)\D*center'.>(\D+)<\D*<td class='cls-data-td' align='left/
156
179
  request = open(SZSEUrl).read.force_encoding('UTF-8')
157
180
  request.scan(format)
158
181
  end
159
182
  end
183
+
184
+ class Search
185
+ SearchUrl = 'http://suggest3.sinajs.cn/suggest/type=11,12,13,14,15&key='
186
+ def self.search(key)
187
+ format = /"(\S*)"/
188
+ url = URI.encode("#{SearchUrl}#{key}")
189
+ request = open(url).read.encode(Encoding.find("UTF-8"),Encoding.find("GBK"))
190
+ request.scan(format)[0][0].split(';').collect{|a| a.split(',')}
191
+ end
192
+ end
160
193
  end
161
194
 
162
195
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sina_stock_interface
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - hging
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-01 00:00:00.000000000 Z
11
+ date: 2014-09-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler