【发布时间】:2016-10-07 03:38:55
【问题描述】:
我正在做一个小项目,它涉及从网站获取数据以进行计算。
我试过了
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
rtb_data.Text = sr.ReadToEnd();
sr.Close();
但是这样,我无法获得完整的源代码,就像我在 chrome 上打开开发者工具包时所做的那样 (F12)。
例子:
<div id="live-match" class="panel-container" data-match-status-code="6" data-mode="3">
我明白了:
<div id="live-match" class="panel-container">
在那个 div 中有许多重要信息,但我根本没有得到课程。
我不是 C# 或动态网页的专业人士,但由于我能够使用开发工具包查看真正的源代码,因此应该也可以在 C# 中获取它,对吧?
我的最后一个解决方案是使用复制/粘贴源代码并从那里开始工作,但这会非常慢,因为我想自动计算东西。
你们知道如何获得完整的源代码吗?我是否必须临时下载内容?如果是,怎么做?
【问题讨论】:
-
据推测,开发人员工具正在向您展示从 javascript 生成的内容——因此,如果不运行您自己的解释器,您将无法获得它。如果只是供个人使用,chrome插件可能是要走的路吗?
-
呈现页面的方式有很多种(执行javascript)。此处描述了其中一种方式:stackoverflow.com/q/24288726/5311735
-
那个链接看起来很有希望,谢谢你的链接。 :)
-
请务必查看已接受答案底部的“更简单的方法”。
标签: c# html web-scraping webpage