我有一个基本的 C# HttpWebRequest。我的问题是它发送 GET 请求的页面,需要启用 javascript(在客户端)才能生成内容。
如何在我的代码中添加 javascript 支持?甚至可能吗?
我有一个基本的 C# HttpWebRequest。我的问题是它发送 GET 请求的页面,需要启用 javascript(在客户端)才能生成内容。
如何在我的代码中添加 javascript 支持?甚至可能吗?
服务器无法真正知道客户端是否支持 Javascript。它只能继续你给它的数据。
所以有两种可能:
它使用标头来确定要发送的响应,并推断您无法运行 Javascript。解决方案:找出它需要的标题,并明确设置它们。
它会将页面发回给您,但您无法使用它,因为您没有在浏览器上显示它。解决方案:查看页面,找出 AJAX 调用 Javascript 正在制作的内容,然后改为制作这些内容。您甚至可能不需要获取原始托管页面。
HttpWebRequest 只是实现 GET,您需要完整的浏览器来执行 JavaScript(并且可能需要 CSS 文件,因为脚本可能依赖于它们)。
内置方法是使用WebBrowser控件来呈现页面,在您发现 JavaScript 呈现完成后抓取 innerHTML。