Rumah >pembangunan bahagian belakang >tutorial php >用PHP如何抓取.NET开发的分页控件的数据?

用PHP如何抓取.NET开发的分页控件的数据?

WBOY
WBOYasal
2016-06-23 13:25:021047semak imbas

比如在
http://121.28.49.84:8003/
以上网页,左边任选一个企业,点击右侧顶部的“监测数据”,可以看到它是用.NET控件做的分页,监控网络请求发现其每次都回发整个网页,且带有viewstate的值,很难模拟。而且采用了UpdatePanel控件,并非向其他接口请求数据。
我的目的是想自动抓取右侧的监测数据,请问有什么办法可以实现抓取这个页面的分页所有数据?
P.S.服务器环境是LAMP


回复讨论(解决方案)

他 就是 AJAX  获取数据,你找到那个AJAX URL连接就可以了,其他根据传参 来的

他的AJAX是用.NET控件的UpdatePanel,实际上是向当前页面自身去请求,这样会导致整个页面的postback,并非是请求另外一个接口地址。
向自身请求时,viewstate非常复杂和难以拼写,而且我通过PHP外部提交的貌似还通不过验证,不知道是哪里的问题。

他的AJAX是用.NET控件的UpdatePanel,实际上是向当前页面自身去请求,这样会导致整个页面的postback,并非是请求另外一个接口地址。
向自身请求时,viewstate非常复杂和难以拼写,而且我通过PHP外部提交的貌似还通不过验证,不知道是哪里的问题。


看它的返回数据就知道了,每次将返回的数据再提交上去。

抓取上一个页面,获取数据的同时要获取_viewstate 和_E开头的两个值,拿到这两个值才能继续下一页抓取。没办法多线程抓取了。不知道微软为何有这样的傻Ⅹ设计。这两个值通常都很长,服务器资源是节省了,但是很浪费网络资源很影响用户体验。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:PHP缩略图类Artikel seterusnya:preg_replace改成preg_replace_callback