php 爬虫如何爬取ajax异步加载文件

来源:互联网 发布:百度网盘总是网络异常 编辑:程序博客网 时间:2024/06/01 07:34

最近做爬虫,遇到了需要爬取异步文件中的内容,结果找不到方法,耽搁了好久,最后终于找到啦,使用phantomjs

直接下载phantomjs,然后可以直接使用啦

贴出codes.js


    //codes.js         system = require('system')         address = system.args[1];//获得命令行第二个参数 接下来会用到         var page = require('webpage').create();         var url = address;    page.settings = {      loadImages: false,   //禁止加载图片      resourceTimeout = 10000,      userAgent: 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.31 (KHTML, like Gecko) PhantomJS/19.0'    };    page.open(url, function (status) {                  if (status !== 'success') {                 //console.log('Unable to post!');             } else {                         console.log(page.evaluate(function(){     var c = document.querySelector('#pgrow').innerHTML;  //获取HTML中pgrow标签内的内容            return c;             }));        }                phantom.exit();         }); 

php部分:
<?php$command = "F:/PHP/workspace/Test1/phantomjs.exe F:/PHP/workspace/Test1/codes.js $url 2>&1";              $page =exec($command,$output);  //执行结果但不输出              //$page =  passthru($command);   //直接输出整个内容              var_dump($output);?>


这样就可以获取到啦,接下来你就可以随心所欲了。希望对大家有帮助!


0 0
原创粉丝点击