日期:2014-05-17  浏览次数:20897 次

如何自己写ASP or HTML代码获取上证指数和深圳综指?
上证指数查询网站:
http://finance.sina.com.cn/realstock/company/sh000001/nc.shtml
该网站的右上角有一块区域显示如下内容:
最新指数
昨日收盘
今日开盘
指数涨跌
今日最高
今日最低
涨跌幅度
总成交量
总成交额
指数振幅
我所感兴趣的就是这一小块内容。每天三点钟之后负责帮我哥哥收集这些数据。
天天上网太累了,偶尔有一天玩过了头,就再也看不到这些数据了。
我想能不能编写一个网页,HTML或者ASP都行,让它每天三点多运行一下,自动替我获取这些数据。如果能行的话,我就可以把该网页传到服务器上运行,自己放心地去玩了。

我看了看上面给出的上证指数查询网页的源代码,看不太懂,大概是调用了*.js函数。

哪位高手能帮我实现这个问题。谢谢!




------解决方案--------------------
下载个炒股软件就行了呀,免费的很多,可以看好几年前的数据。大智慧什么的
------解决方案--------------------
他们后台都有数据库支持,另,同意楼上的方案
------解决方案--------------------
我想知道如下问题的答案:
这几个变量如何获取的?
上面的HTML表格代码又是如何显示数据的?
人家采用的方法是,把数据动态赋予那些表格,你看他每个td都加了id值
我想:
你的程序只负责保存当时的页面文件不就行了
------解决方案--------------------
首先查看页面原代码中确实是和你说的一样
然后在原代码中发现了如下代码
S_Finance.upconstants.setDisp( 'itemCurrent2 ',S_Finance.constant.subFloat(dataArray[3],AppConf.veracitynum),0);
根据代码所写的意思S_Finance.upconstants.setDisp这个函数是负责把值赋予指定的对象,并让对象显示信息
那么这个
S_Finance.constant.subFloat(dataArray[3],AppConf.veracitynum)
在BAIDU上查到subFloat是表示限定指定小数位数
那么AppConf.veracitynum应该是小数位数,而dataArray[3]是最新指数的实际值
通过查询.发现
var dataArray=data.split( ", ");是由data字符串翻译数组转换而来
而data则是由eval( "var data=hq_str_ "+zdparr[i]+ "; ")这个语句过来.在通过前边的一个循环
知道了data的实际数据是另外一个变量赋予的这个变量的名称就是hq_str_(zdparr数组的单元值)
通过检查zdparr的定义
var zdparr=new Array( 'sh000002_zdp ', 'sh000003_zdp ', 'sz399107_zdp ', 'sz399108_zdp ');
.得到了如下几个变量
hq_str_sh000002_zdp
hq_str_sh000003_zdp
hq_str_sz399107_zdp
hq_str_sz399108_zdp
至于如何生成的这么几个变量。目前不清楚.你自己慢慢查吧.不过右键另存以后.
发现list=sh000001,s_sh000001,s_sh000300,s_sz399001,s_sz399106.htm好象存储着你要的数据

------解决方案--------------------
用ajax
------解决方案--------------------
google上搜索xmlhttp