首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

,做行业板块涨幅榜的程序,求教大牛

2012-12-19 
在线等,做行业板块涨幅榜的程序,求教大牛在线等,做行业板块涨幅榜的程序,求教大牛,做个像上面那张图片一样

在线等,做行业板块涨幅榜的程序,求教大牛

在线等,做行业板块涨幅榜的程序,求教大牛,
做个像上面那张图片一样的行业板块涨跌幅,怎么做呢,找了很久都没找到接口
[最优解释]
没有接口就直接抓取啊,用HtmlAgilityPack。不会写的话把哪个网页地址贴给我,我试着写写看。
[其他解释]

引用:
有网站提供数据,你若有接口可以获得,还有和交易所有合同的,从交易所拿数据,还有从其他网站上爬的


说话就是简单哈,

模拟浏览器抓数据。

如果你有数据,直接绑定列表。
[其他解释]
你这个table就够了,关键你有数据就够了
[其他解释]
引用:
你这个table就够了,关键你有数据就够了

这个数据是从哪里来的?还是自己添加的?
[其他解释]
有网站提供数据,你若有接口可以获得,还有和交易所有合同的,从交易所拿数据,还有从其他网站上爬的
[其他解释]
引用:
有网站提供数据,你若有接口可以获得,还有和交易所有合同的,从交易所拿数据,还有从其他网站上爬的

现在就是不知道从哪里拿到那个数据所以才来前教的嘛,晕死,我也知道用表格放数据,但是现在连数据都不知道从哪里来,没有接口
[其他解释]
哪里截的图,就抓哪里的数据。
[其他解释]
该回复于2012-12-08 14:12:25被管理员删除
[其他解释]
引用:
哪里截的图,就抓哪里的数据。

不知道怎么抓捏,我看了源码,那个都是直接HTML代码,没有ajax获取过来或者JS调用出来,所以不知道怎么弄
[其他解释]
引用:
没有接口就直接抓取啊,用HtmlAgilityPack。不会写的话把哪个网页地址贴给我,我试着写写看。

http://www.licaizhe.com/hangye_z.html
http://www.qianzhan.com/
这两个随便哪个都可以
[其他解释]
示例代码:
HtmlWeb htmlWeb = new HtmlWeb();
HtmlDocument htmlDoc = htmlWeb.Load(@"http://www.qianzhan.com/");
HtmlNodeCollection uls = htmlDoc.DocumentNode.SelectNodes(@"//div[@id='div-homestocks']/dl/dd/ul");
foreach (HtmlNode ul in uls)
{
foreach (HtmlNode li in ul.Elements("li"))
Response.Write(li.InnerText + " ");
Response.Write("<br/>");
}
Response.End();

下载HtmlAgiltiyPack,引入该程序集,开头添加:
using HtmlAgilityPack;
[其他解释]
改进一下,把涨跌幅分开输出:
HtmlWeb htmlWeb = new HtmlWeb();
HtmlDocument htmlDoc = htmlWeb.Load(@"http://www.qianzhan.com/");
HtmlNodeCollection uls = htmlDoc.DocumentNode.SelectNodes(@"//div[@id='div-homestocks']/dl/dd/ul");
for (int i = 0; i < uls.Count; i++)
{
if (i == 0)
Response.Write("<font color='red'>涨幅排名:</font><br/>");
if (i == uls.Count / 2)
Response.Write("<font color='green'>跌幅排名:</font><br/>");
foreach (HtmlNode li in uls[i].Elements("li"))
Response.Write(li.InnerText + " ");
Response.Write("<br/>");
}
Response.End();

[其他解释]
csdn代码编辑器有bug,我上面的Response.Write方法里大多数都有<br/>的,被过滤掉了。


[其他解释]

引用:
改进一下,把涨跌幅分开输出:


C# code?



1234567891011121314

HtmlWeb htmlWeb = new HtmlWeb(); HtmlDocument htmlDoc = htmlWeb.Load(@"http://www.qianzhan.com/"); HtmlNodeCollection uls = htmlDoc.DocumentN……

谢谢,但是如果对方突然改变网站HTML的格局不就取不到数据了?
[其他解释]
引用:
引用:
有网站提供数据,你若有接口可以获得,还有和交易所有合同的,从交易所拿数据,还有从其他网站上爬的

说话就是简单哈,

模拟浏览器抓数据。

如果你有数据,直接绑定列表。

是啊,所以麻烦,如果改变HTML格局就整个不行了,像http://finance.ifeng.com/本来在这个网站可以找到哪个接口的,但是他不允许外网调用,不知道怎么搞,我有数据的话就不用请教这么麻烦了,各位大哥,而且也没有接口
[其他解释]
没接口用采集方法的话,它改变html结构自然你得重新写了,这没什么办法的。

热点排行