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 +4 -4
- data/lib/sina_stock_interface/version.rb +1 -1
- data/lib/sina_stock_interface.rb +38 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0a0add83cace0a5ec5f1bf19dee2fdd1b26fdb6b
|
4
|
+
data.tar.gz: c18b002b3c99febe71c99b3920168fd4b0358d81
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: db556cb5aa47f81ee2e063dd6bbb34974229ffc756cd455f4dbb6d2912e7cba2cc3a4183bdc447218f668623fb6b9065f62ad7f9f1d05f35f744dc9920a56d9a
|
7
|
+
data.tar.gz: 7d0fa8e6704c3aafc4c3352614f3e30389d7f532691cad314d5954348b29a031cd27a0fb89d594e47d089e299c0092b30c0f17eee5bacd166464b1996b281e2a
|
data/lib/sina_stock_interface.rb
CHANGED
@@ -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.
|
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-
|
11
|
+
date: 2014-09-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|