您现在的位置是: pk10投注 > 股市 > 股市要闻

股票行情历史数据接口 搜狐股票历史数据接口

时间:2019-07-20 09:10:04 来源:万家财经综合

publicclassStockConnection{

publicstaticvoidmain(String[]args){

URLur=null;

try{

pk10投注 //搜狐行情历史接口

// ur=newURL(");

//新浪行情历史接口

ur=newURL("(10000)&symbol=sh600000&end_date=20150809&begin_date=20000101&type=plain");

HttpURLConnectionuc=(HttpURLConnection)ur.openConnection();

BufferedReaderreader=newBufferedReader(newInputStreamReader(ur。openStream(),"GBK"));

Stringline;

while((line=reader.readLine())!=null){

System.out.println(line);

}

}catch(Exceptione){

//TODOAuto-generatedcatchblock

e。printStackTrace();

}

}

}

这是新浪的,我用过。但是,现在的历史数据接口链接似乎坏了,接收来乱码,所以,现在改用搜狐的,只是不晓道上证股票代码怎么表示,只晓道深证的,是股票号码前加cn_

如何获取实时的股票行情信息,有相关的公用接口或者数据源吗

实时股票数据接口

股票数据的获取目前有如下两种方法可以获取:

1.

pk10投注http/javascript接口取数据

2。

web-service接口

1.http/javascript接口取数据

1。1Sina股票数据接口

以大秦铁路(股票代码:601006)为例,如果要获取它的最新行情,只需访问新浪的股票数据

接口:

这个url会返回一串文本,例如:

var

hq_str_sh601006="大秦铁路, 27.55, 27.25, 26.91, 27.55, 26.20, 26.91,

26.92,

22114263, 589824680, 4695, 26.91, 57590, 26.90, 14700,

26.89, 14300,

26.88, 15100, 26.87, 3100, 26.92, 8900, 26.93,

14230, 26.94, 25150, 26.95, 15220, 26.96, 2008-01-11,

15:05:32";

这个字符串由许多数据拼接在一起,不同含义的数据用逗号隔开了,按照程序员的思路,顺序号从0开始。

0:”大秦铁路”,股票名字;

1:”27.55″,今日开盘价;

pk10投注2:”27.25″,昨日收盘价;

3:”26.91″,当前价格;

4:”27.55″,今日最高价;

5:”26.20″,今日最低价;

6:”26。91″,竞买价,即“买一”报价;

7:”26。92″,竞卖价,即“卖一”报价;

8:”22114263″,成交的股票数,由于股票交易以一百股为基本单位,所以在使用时,通常把该值除以一百;

9:”589824680″,成交金额,单位为“元”,为了一目了然,通常以“万元”为成交金额的单位,所以通常把该值除以一万;

10:”4695″,“买一”申请4695股,即47手;

11:”26.91″,“买一”报价;

12:”57590″,“买二”

pk10投注13:”26.90″,“买二”

14:”14700″,“买三”

pk10投注15:”26.89″,“买三”

16:”14300″,“买四”

pk10投注17:”26。88″,“买四”

pk10投注18:”15100″,“买五”

19:”26.87″,“买五”

20:”3100″,“卖一”申报3100股,即31手;

21:”26.92″,“卖一”报价

(22,

pk10投注23), (24, 25), (26,27), (28,

29)分别为“卖二”至“卖四的情况”

30:”2008-01-11″,日期;

pk10投注31:”15:05:32″,时间;

一个简单的JavaScript应用例子:

script

type="text/javascript" src=""

charset="gb2312">/script>

/javascript">

var

elements=hq_str_sh601006。split(",");

document。write("current

price:"+elements[3]);

这段代码输出大秦铁路(股票代码:601006)的当前股价

current

price:14。20

如果你要同时查询多个股票,那么在URL最后加上一个逗号,再加上股票代码就可以了;比如你要一次查询大秦铁路(601006)和大同煤业(601001)的行情,就这样使用URL:

,sh601001

查询大盘指数,比如查询上证综合指数(000001):

服务器返回的数据为:

var

hq_str_s_sh000001="上证指数,3094。668,-128。073,-3。97,436653,5458126";

数据含义分别为:指数名称,当前点数,当前价格,涨跌率,成交量(手),成交额(万元);

查询深圳成指数:

对于股票的K线图,日线图等的获取可以通过请求…。/…/*。gif此URL获取,其中*代表股票代码,详见如下:

查看日K线图:

newchart/daily/n/sh601006.gif

分时线的查询:

pk10投注newchart/min/n/sh000001。gif

日K线查询:

newchart/daily/n/sh000001.gif

周K线查询:

newchart/weekly/n/sh000001.gif

月K线查询:

newchart/monthly/n/sh000001。gif

1.2

Baidu&Google的财经数据

在baidu,

google中搜索某只股票代码时,将会在头条显示此股票的相关信息,例如在google搜索601006时,

pk10投注第一条搜索结果如下图:

通过点击左边的图片我们发觉会将此图片链接来sina财经频道上,也就是说google股票数据的获取也是从sina获取。后经挠包分析,发觉google也是摘用1.1中介绍的接口。

Baidu的股票数据来自baidu的财经频道

1。3

其他方式

除了sina,baidu等网站提供股票信息外,其他网站也有类似的接口。我们分析了一款论坛上摘用的股票插件,

其中有关于实时股票数据获取的介绍,详见如下代码,其中可以看来有些数据来自sina。

以下是ASP示例:

=5

then

stockdata=gethttp(""&code&"")

if

not len(stockdata)=0 then

stockdata=split(stockdata,chr(34))(1)

end if

if

len(stockdata)=0

then

stockdata="0,0,0,0,0,0,0,0,0,0,0,0"

else

stockdatasplit=split(stockdata,",")

stockdata=""&exstock.checkstr(stockdatasplit(0))&","&stockdatasplit(1)&","&stockdatasplit(2)&","&stockdatasplit(3)&","&stockdatasplit(4)&","&stockdatasplit(5)&","&formatdatetime(""&stockdatasplit(30)&"

"&stockdatasplit(31)&"",0)&""

end

if

‘0=股票名称,1=开盘价格,2=昨收盘价格,3=当前价格,4=最高价,5=最低价,6=更新时间

pk10投注getstockdata=stockdata

end

function

function getstockimg(code)

dim

rndnum,addnum,checkcode,imgsource

if len(code)=5

then

pk10投注getstockimg="newchart/daily/n/sh"&code&".gif"

end

if

imgsource=""

case

3

getstockimg=""&code&"&1003&SZ

500 330"

imgsource=""

case

4

getstockimg=""&code&""

pk10投注imgsource=""

end

select

getstockimg=split(""&getstockimg&"||"&imgsource&"","||")

end

function

function getastockimg()

dim

rndnum,addnum,checkcode

dim

getastockimgb,imgsource

addnum=6

pk10投注randomize:rndnum=cint(rnd*addnum)

select

case rndnum

case

0

getastockimg=""

getastockimgb=""

imgsource=""

case

1

getastockimg=""

getastockimgb=""

imgsource=""

case

2

getastockimg=""

getastockimgb=""

imgsource=""

case

3

pk10投注getastockimg="

180

140"

pk10投注getastockimgb="

180

140"

imgsource=""

case

4

getastockimg="newchart/small/ish000001.gif?1189176558328"

getastockimgb="newchart/small/isz399001。gif?1189176558328"

imgsource=""

case

5

pk10投注getastockimg=""

getastockimgb=""

imgsource=""

case

6

getastockimg=""

getastockimgb=""

imgsource=""

end

select

getastockimg=split(""&getastockimg&"||"&getastockimgb&"||"&imgsource&"","||")

end

function

%>

2.

web-service接口

2.1 CHINAstock的web-service:

中国股票行情数据

WEB 服务(支持深圳和上海股市的全部基金、债券和股票),数据即时更新。输出GIF分时走势图、日/周/月 K

线图、及时行情数据(股票名称、行情时间、最新价、昨收盘、今开盘、涨跌额、最低、最高、涨跌幅、成交量、成交额、竞买价、竞卖价、委比、买一 - 买五、卖一 -

卖五)。此WEB服务提供了如下几个接口:

2。1。1

pk10投注getStockImageByCode

GET

股票GIF分时走势图

INput:theStockCode =

股票代号,如:sh000001

POST /WebServices/ChinaStockWebService。asmx

HTTP/1.1

Host:

Content-Type:

text/xml; charset=utf-8

Content-Length:

length

SOAPAction:

""

string

Output:

2.1.2

getStockImageByteByCode

获得中国股票GIF分时走势图字节数组

INput:theStockCode

= 股票代号,如:sh000001

POST /WebServices/ChinaStockWebService。asmx

pk10投注HTTP/1.1Host: Content-Type: text/xml;

charset=utf-8Content-Length: lengthSOAPAction:

""

string

返回的数据如下:

R0lGODlhIQIsAfcAAAAAAAwLBxkGBQ4ODhAQEBsSChUVFS4TDB8eGQkA9koPCDAAzy4mFVgAp2UYC0IqEUYuBVwiDEAsI1QnFX8AgDU1NUozFlgxD6cBWVY5FnIwEmQ4Gc0AMlhDHPEADlVJMEpKSm1IHOUBWpY3FZMyVY9IGXRWIEFmWGNYUmpdPXJgHQB8HK9EGGBgX4lXIACoAHhkMyt4m4VkJtstbv8A

2.1.3

getStockImage_kByCode

直接获得中国股票GIF日/周/月 K

线图(545*300pixel/72dpi)

INPUT: theStockCode =

股票代号

theType = K 线图类型(D:日[默认]、W:周、M:月),

POST

/WebServices/ChinaStockWebService.asmx HTTP/1.1Host:

Content-Type: text/xml; charset=utf-8Content-Length:

lengthSOAPAction: "" string

string

比如按照下图所示输入:

pk10投注返回的结果就是周K线图:

pk10投注2。1。4

getStockImage_kByteByCode

获得中国股票GIF日/周/月 K

线图字节数组

Input:theStockCode = 股票代号,如:sh000001

POST

/WebServices/ChinaStockWebService.asmx HTTP/1.1Host:

Content-Type: text/xml; charset=utf-8Content-Length:

lengthSOAPAction: "" string string

HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length

pk10投注base64Binary

比如按照下图输入:

返回的结果就是周K线图字节数组

R0lGODlhIQIsAfcAAAAAAAwLBxkGBQ4ODhAQEBsSChUVFS4TDB8eGQkA9koPCDAAzy4mFVgAp2UYC0IqEUYuBVwiDEAsI1QnFX8AgDU1NUozFlgxD6cBWVY5FnIwEmQ4Gc0AMlhDHPEADlVJMEpKSm1IHOUBWpY3FZMyVY9IGXRWIEFmWGNYUmpdPXJgHQB8HK9EGGBgX4lXIACoAHhkMyt4m4VkJtstbv8A

2.1.5

getStockInfoByCode

获得中国股票及时行情

input:theStockCode

= 股票代号

POST /WebServices/ChinaStockWebService。asmx HTTP/1。1Host:

Content-Type: text/xml; charset=utf-8Content-Length:

lengthSOAPAction: ""

string

返回的值一个一维字符串数组

String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一

- 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。

Web

service的方法类似于现在concurrent项目的DBWS数据的获取,都是通过SOAP协议向DBWS服务器获取相关的数据。

利用雅虎查中国股票

返回微软的股票价格

"MSFT","4:00pm

- 30.70",+1.04,"21.46 -

30.75",29.77,29.66

这个返回安泰科技的,一般有半个小时的延迟。

但是s=000969。sz

这个后面的sz是深圳的意思, 沪市是SS后缀

银江,数畅,网际风等行情接口怎样购买?

10多年这些接口就存在了,这些年免费的行情软件来处都是,许多人都不用这种接口了,这种接口是全推行情,自己会用公式选股的人用用比较合适。普通人还是用免费的,淘宝上都是真的,你随便找家便宜的,下载安装接口后直接用买来的账号就可以用了,接口上都有来期时间

期货行情数据接口============

通达信股票软件现在上面都直接挂期货和港股行情

请问怎样用Java获取股票行情历史数据?新浪、搜狐、百度财经都可以......

pk10投注publicclassStockConnection{

publicstaticvoidmain(String[]args){

URLur=null;

try{

//搜狐股票行情历史接口

// ur=newURL(");

pk10投注 //新浪股票行情历史接口

ur=newURL("(10000)&symbol=sh600000&end_date=20150809&begin_date=20000101&type=plain");

HttpURLConnectionuc=(HttpURLConnection)ur。openConnection();

BufferedReaderreader=newBufferedReader(newInputStreamReader(ur。openStream(),"GBK"));

pk10投注 Stringline;

while((line=reader.readLine())!=null){

System。out。println(line);

}

}catch(Exceptione){

//TODOAuto-generatedcatchblock

e.printStackTrace();

}

}

}

开发炒股软件,从哪里获得股票数据

目前市场上有很多股票行情交易软件,各种软件提供了丰富的分析和展现功能,而且基本上是免费的。但这些数据都是在线的、无法统一地下载来本地进行分析,于是上网找了些资料,有的是将程序来新浪搜狐的财经频道或其他财经类网站挠取并分析网页,这种方法操作性不强而且准确率较低,遇来广告或网页变动时风险较大。于是找来了Sina股票数据接口,这个接口是通过在IE端输入""+相应股票代码网站返回一个文件形式的数据,也可以通过JS获取该文件中的变量得来想要的数据字符串。

以大秦铁路(股票代码:601006)为例,如果要获取它的最新行情,只需访问新浪的股票数据接口:sh601006这个url会返回一串文本,例如:

var hq_str_sh601006="大秦铁路, 27.55, 27.25, 26.91, 27.55, 26.20, 26.91, 26.92,

22114263, 589824680, 4695, 26。91, 57590, 26。90, 14700, 26。89, 14300,

26.88, 15100, 26.87, 3100, 26.92, 8900, 26.93, 14230, 26.94, 25150, 26.95, 15220, 26.96, 2008-01-11, 15:05:32";

这个字符串由许多数据拼接在一起,不同含义的数据用逗号隔开了,按照程序员的思路,顺序号从0开始。

pk10投注0:”大秦铁路”,股票名字;

1:”27.55″,今日开盘价;

pk10投注2:”27。25″,昨日收盘价;

3:”26.91″,当前价格;

4:”27.55″,今日最高价;

5:”26.20″,今日最低价;

6:”26。91″,竞买价,即“买一”报价;

7:”26。92″,竞卖价,即“卖一”报价;

8:”22114263″,成交的股票数,由于股票交易以一百股为基本单位,所以在使用时,通常把该值除以一百;

9:”589824680″,成交金额,单位为“元”,为了一目了然,通常以“万元”为成交金额的单位,所以通常把该值除以一万;

10:”4695″,“买一”申请4695股,即47手;

11:”26。91″,“买一”报价;

12:”57590″,“买二”

13:”26。90″,“买二”

14:”14700″,“买三”

15:”26。89″,“买三”

pk10投注16:”14300″,“买四”

17:”26.88″,“买四”

pk10投注18:”15100″,“买五”

19:”26。87″,“买五”

20:”3100″,“卖一”申报3100股,即31手;

pk10投注21:”26.92″,“卖一”报价

(22, 23), (24, 25), (26,27), (28, 29)分别为“卖二”至“卖四的情况”

30:”2008-01-11″,日期;

31:”15:05:32″,时间;

pk10投注 相应地,也可以获得深市相关股票信息,但是这种方法的弊病是只能获得最新的或者是当天的股票数据,无法将历史数据导入来数据库,当然,你也可以以某一天为起始点自己复新创造历史数据。所以连续觅找其他网站接口,终于找来了雅虎财经网站,它提供的接口可以直接把股票历史数据导成Excel,真实太方便了!直接在浏览器地址中数据网址即可股票代码,但是如果手动输入再逐一下载保存简直是太麻烦了,光上证股票就800多个,估量刚手动下载完就又开盘了还得复新下载。所以我的思路是,1、利用多线程方法下载股票文件。2、将这些文件统一导入数据库。

1.1文件下载类:

import java。io。*;

import java.net.*;

import java。util。List;

import fatowen.stocksystem.sysconfig.data.DownLoadVO;

public class HttpDownFile {

private static int BUFFER_SIZE = 8096;

/**根据URL下载文件并保存

* @param destUrl String

pk10投注 * @param fileName String

* @throws Exception

*/

public void saveToFile(String destUrl, String fileName) throws IOException {

pk10投注 FileOutputStream fos = null;

BufferedInputStream bis = null;

HttpURLConnection httpUrl = null;

URL url = null;

byte[] buf = new byte[BUFFER_SIZE];

pk10投注 int size = 0;

url = new URL(destUrl);

httpUrl = (HttpURLConnection) url。openConnection();

httpUrl.connect();

pk10投注 bis = new BufferedInputStream(httpUrl。getInputStream());

fos = new FileOutputStream(fileName);

while ((size = bis。read(buf)) != -1)

pk10投注 fos.write(buf, 0, size);

fos.close();

bis。close();

httpUrl.disconnect();

}

}

1。2多线程实现下载类:

import java.util.ArrayList;

pk10投注import java.util.List;

public class HisDataAddThread extends Thread {

boolean runFlag = true;

List myParamList = null;

String downLoadData ="";

String baseUrl = "";

String result = "";

String savePath = "";

public HisDataAddThread(List paramList,String savePath){

this。myParamList = paramList;

this.savePath = savePath;

}

public void run() {

while(runFlag){

downLoadData = PublicDataUtil。getDownLoadData(myParamList);

if(!Lib.isEmpty(downLoadData)){

HttpDownFile oInstance = new HttpDownFile();

try {

pk10投注 oInstance.saveToFile(baseUrl + downLoadData, savePath + downLoadData + ".csv");

pk10投注 }catch (Exception err) {

System。out。println(err。toString());

}

}else{

runFlag = false;

}

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

public List getFailureList() {

return failureList;

}

pk10投注 public void setFailureList(List failureList) {

this。failureList = failureList;

}

public List getSuccessList() {

return successList;

}

public void setSuccessList(List successList) {

this.successList = successList;

}

}

2。将下载完的文件统一保存来数据库工具类

import java.io.BufferedReader;

import java.io.File;

pk10投注import java.io.FileReader;

pk10投注import java。io。IOException;

import java.util.ArrayList;

import java。util。Iterator;

import java。util。List;

pk10投注public class CSVUtitl {

private BufferedReader bufferedreader = null;

private List list = new ArrayList();

public CSVUtitl(){

}

public CSVUtitl(String filename) throws IOException{

bufferedreader = new BufferedReader(new FileReader(filename));

String stemp;

while((stemp = bufferedreader.readLine()) != null){

list。add(stemp);

}

}

public List getList() throws IOException {

return list;

}

// 得来csv文件的行数

public int getRowNum(){

return list。size();

}

//得来csv文件的列数

public int getColNum(){

pk10投注 if(!list.toString().equals("[]")) {

//csv文件中,每列之间的是用','来分隔的

if(list.get(0).toString().contains(",")) {

return list.get(0).toString().split(",").length;

}else if(list.get(0).toString().trim().length() != 0) {

return 1;

}else{

return 0;

pk10投注 }

pk10投注 }else{

return 0;

}

}

pk10投注 //取得指定行的值

public String getRow(int index) {

if (this.list.size() != 0)

return (String) list.get(index);

else

return null;

}

//取得指定列的值

public String getCol(int index){

if (this。getColNum() == 0){

return null;

}

StringBuffer scol = new StringBuffer();

String temp = null;

int colnum = this。getColNum();

if (colnum > 1){

for (Iterator it = list.iterator(); it.hasNext();) {

temp = it.next().toString();

scol = scol.append(temp.split(",")[index] + ",");

}

}else{

for (Iterator it = list.iterator(); it.hasNext();) {

temp = it.next().toString();

scol = scol.append(temp + ",");

}

}

String str=new String(scol.toString());

pk10投注 str = str.substring(0, str.length() - 1);

return str;

}

pk10投注 //取得指定行,指定列的值

public String getString(int row, int col) {

String temp = null;

int colnum = this.getColNum();

if(colnum > 1){

temp = list.get(row).toString().split(",")[col];

}else if(colnum == 1) {

temp = list.get(row).toString();

}else{

temp = null;

}

return temp;

}

pk10投注 public void CsvClose() throws IOException {

this.bufferedreader.close();

}

public void run(String filename) throws IOException {

pk10投注 CSVUtitl cu = new CSVUtitl(filename);

for(int i=0;i<cu.getRowNum();i++){

String SSCCTag = formatData(cu。getString(i,1));//得来第i行。第一列的数据。

String SiteName = formatData(cu。getString(i,2));//得来第i行。第二列的数据。

String StationId= formatData(cu。getString(i,3));

//将数据保存来数据库中

... ...

pk10投注 。。。 。。。

pk10投注 。。。 。。。

}

cu.CsvClose();

}

pk10投注 public String formatData(String baseData){

String result = null;

if(!"".equals(baseData) && baseData != null){

if(baseData.length() > 1){

result = baseData。substring(1,baseData。length());

pk10投注 result = result.substring(0, result.length()-1);

}else{

result = baseData;

}

}else{

result = "";

}

return result.trim();

}

pk10投注 public static void main(String[] args) throws IOException {

CSVUtitl test = new CSVUtitl();

try{

File path = new File("e:\\data");

File[] f = path.listFiles();

List l = new ArrayList();

for(int i=0;i<f。length;i++){

if(f[i].getName().endsWith(".csv"))

l。add(f[i]);

}

Iterator it = l。iterator();

while(it.hasNext()){

File ff = (File)it。next();

test.run(path.toString()+File.separator+ff.getName());

}

}catch (Exception e){

}

}

}

来源:http://www.66m9d.com/gushi/news/131724.html

热门标签

pk10投注相关的文章

热门文章

关于我们| 联系我们| 投稿合作| 法律声明| 返回顶部

版权所有 ©2015-2017 万家财经

所载文章、数据仅供参考,不作为投资依据。使用前务请仔细阅读网站声明。

pk10投注 pk10手机投注app pk10开奖记录 pk10彩票 pk10彩票

免责声明: 本站资料及图片来源互联网文章-|,本网不承担任何由内容信息所引起的争议和法律责任。所有作品版权归原创作者所有,与本站立场无关,如用户分享不慎侵犯了您的权益,请联系我们告知,-|我们将做删除处理!