当前位置:编程学习 > C#/ASP.NET >>

关于抓取页面元素的问题

我想用程序发送请求访问一个页面,然后抓取页面上的元素

利用HttpWebRequest或WebClient能抓到源代码,但是源代码里面没有我想要的元素,按F12审视元素却可以看得到这些元素,这些数据应该是用js加载上去的,所以我想问一下用js加载的数据要怎么获得?

跪求解决方向。。。 --------------------编程问答-------------------- 一个是你通过抓包、调试js、阅读js代码的方式进一步模拟这种数据加载行为。

一个是使用webbrowser。 --------------------编程问答-------------------- 求来人啊,,快出人命了 --------------------编程问答-------------------- 当然了,你自己写一个js解释引擎,实现通用的加载动态网页,也是一个办法,只是相当复杂。 --------------------编程问答--------------------
引用 1 楼 caozhy 的回复:
一个是你通过抓包、调试js、阅读js代码的方式进一步模拟这种数据加载行为。

一个是使用webbrowser。



webbrowser貌似只有winform才有这个控件吧?我看网上很多都说用这个。。自己试了下,还是好多问题  先用HttpWebRequest获取源代码,然后webbrowser.documentText=获取的源码。。然后东西都不出来。。好烦人。。

能讲讲第一种方法如何入手吗?或者给点资料看看。。 --------------------编程问答-------------------- 用你那个F12能出东西的浏览器,找到这个浏览器的句柄,在再内存定位这个浏览器,取到F12窗口的值 --------------------编程问答--------------------
引用 5 楼 uinatlex 的回复:
用你那个F12能出东西的浏览器,找到这个浏览器的句柄,在再内存定位这个浏览器,取到F12窗口的值


能具体点吗?或者来点资料,你这样说,我也不知道要怎么做,百度都不知道怎么百了- - --------------------编程问答--------------------
引用 6 楼 lyj224170707 的回复:
Quote: 引用 5 楼 uinatlex 的回复:

用你那个F12能出东西的浏览器,找到这个浏览器的句柄,在再内存定位这个浏览器,取到F12窗口的值


能具体点吗?或者来点资料,你这样说,我也不知道要怎么做,百度都不知道怎么百了- -

就是 WindowsAPI 控制其他进程 --------------------编程问答-------------------- 获取不到的应该是动态加载的,你看看它的http请求就知道了,
然后再模拟请求就可以看到 --------------------编程问答-------------------- 跨域的话 获取不到是正常的
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,