猿问

node爬虫 怎么检测一个页面中的某段js是否执行了

想写一个爬虫,页面js的执行用electron(类似nightmarejs的实现,起到phantomjs的作用)
页面中本来有一个img他的src值会被js改变
我想获得改变之后的值
我怎么知道这段改变src值得代码到底执行没有呢,img是否显示了新的图片

本来有一段这样的

<img src="..."><script>
    // change img src</script>

我想获得更改后的,img的二进制数据


明月笑刀无情
浏览 798回答 1
1回答

慕丝7291255

做爬虫一定要用最“直接”的方法来解决问题。比如你说的有一个动态的img值,那你要获取动态改变之后的值,就应该关注改变的过程本身,而不是顺着一个时间顺序关注整体过程的每一步。简单来说,是哪个JS文件在改变图片的src,具体又是其中的哪一行?可能JS文件经过压缩合并之后你很难读懂,那就从数据的流动上入手,这个改变之后的src值是和整个document一起获取回来的吗?还是放置在某个JS文件中储存?还是在触发src更改之后,再异步获取然后填充进来的?只要抓到了你需要的数据,再找到它的规则,比如如何根据主url获得这个改变图片的src,再根据这个规则去直接获取就好了。模拟浏览器行为有时候也会用到,但大部分情况下不需要。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答