我有使用 WebClient 的 GET 请求从网站更新其 GUI 的 Windows 窗体应用程序;然而,其中一些值是使用 JavaScript 在网页中更新的,因此用户不必不断刷新页面来获取它们。我怎样才能让我的程序获得这些值而不必继续发送新的 GET 请求。
问问题
379 次
3 回答
1
完全按照您的意愿进行操作的最佳方法是对更新您正在抓取的页面上的值的 javascript 进行逆向工程。除此之外,恐怕你正在做的是我们能做的最好的。
从好的方面来说,javascript 只不过是纯文本源代码,所以你可以看一看。但是这样做的合法性取决于你在哪里。在包括美国在内的大多数地方,仅查看在线代码是合法的。复制它不是。但正如甲骨文与谷歌案中的法官所说:将版权应用于单个函数是没有意义的(我是在解释,他说“range_check”而不是“单个函数”)。
如果 javascript 被混淆,则将其复制粘贴到漂亮的打印机中。只是谷歌“javascript漂亮的打印机”。网上有很多。
于 2012-10-26T16:01:02.767 回答
1
您说您希望能够像在 JavaScript 中一样在 C# 中做某事,但您不想“不断发送新的 GET 请求”。问题是,这正是JavaScript 正在做的事情。它只是碰巧在幕后异步进行。你可以用 C# 做同样的事情。JavaScript 只是在后台执行 GET 或 POST 请求,您可以使用 C# 执行相同的请求。
于 2012-10-26T16:05:47.030 回答
1
或者,您可以简单地从隐藏的 Web 浏览器中将计时器设置为 GetElementById
于 2012-10-26T17:00:29.933 回答