1
gkiwi 2015-05-28 12:07:57 +08:00
1. 如果你需要的数据是通过ajax异步过来的,你直接调用他的接口就好了。
2. 如果是渲染过来页面的时候,数据被写到了js里面,然后再拼接的,那你就用正则匹配下试试。 3. http://casperjs.org/ 那就用浏览器来执行js把。。 还有就是真不清楚你想抓什么。。youtube页面上的列表? |
2
morefreeze 2015-05-28 21:32:25 +08:00
顶1楼,另外搜了下,除了casperjs还有phantomjs也可用,撸个脚本就把之后的表格打印或者存成图片,很方便。
var page = require('webpage').create(); system = require('system'); url = system.args[1]; page.open(url, function(status) { var title = page.evaluate(function() { var tbl = document.getElementById("mainTable"); return tbl.innerHTML; }); console.log(title); page.render('example.png'); phantom.exit(); }); 保存成show_course.js 然后执行`phantomjs show_course.js > course.html`就行啦 |
3
morefreeze 2015-05-28 21:33:54 +08:00
@morefreeze 第二个参数是url,应该是phantomjs show_course.js your_url > course.html
|
4
latyas 2015-05-28 22:00:58 +08:00
js渲染过就分析js,
用phantomjs速度真是慢出翔 |