猿问

JS阻止爬取网站,如何解决?

因工作需要,需要程序定时去获取网站发布的要闻,地址为:http://cnda.cfda.gov.cn/WS04/...

尝试过PHP,NODEJS,C#都未能抓取成功,该网站里有一段JS会阻止后台的抓取,抓下来的也是这段JS,后面的内容不会继续加载了。

比较有挑战哦,各位可以看看。
PS:一定是要用后端抓取,浏览器上看到页面无意义。

撒科打诨
浏览 596回答 5
5回答

达令说

selenium

慕妹3146593

这样的话不是一段js阻止抓取,而是一段js负责加载剩余内容,现在一些框架也是用js加载内容的,你在浏览器里禁用掉js再开应该也是一样的效果,你从那段js里抠出这个网站的api应该就行了,或者从那段js里解密出网站的真正内容。这里有个需要确定的问题是这段js是负责从服务器上加载(并解密)剩余内容,还是负责直接解密剩余内容(剩余内容已经包含在这段js中) 当然如果你的抓取规模不大的话直接开个无头chrome抓就行了

慕桂英3389331

找api接口,根据api接口去获取内容!

qq_花开花谢_0

这个网站好恶心。。。页面中有个js会call debugger,然后还下载要给js也会call debugger…… 如果想直接在浏览器console里解决的话,就只有屏蔽这两个脚本了。 首先对document右击选择屏蔽Js,如下图: 然后选Network页面,里面有个乱码名字的脚本,右击屏蔽:
随时随地看视频慕课网APP
我要回答