1
我正在進行網絡抓取以完成幾項任務。如何在node-js環境中使用phantomjs進行動態頁面抓取?
我已經使用node-js 請求模塊進行頁面抓取。
它工作正常,對cookie會話和所有人都很好。
但是,當時間來渲染動態網頁建立與一些JavaScript框架像ANGULAR或BACKBONE等
我想爲phantomjs克服這件事,因爲我在谷歌發現它失敗時這樣的情況是很有幫助的。
我還發現phantomjs phantom
隨着phantomjs一個橋樑的NodeJS這個橋模塊,我能夠做到的事情沒有一樣多。
var phantom = require('phantom');
var fs = require('fs');
var sitepage = null;
var phInstance = null;
phantom.create()
.then(instance => {
phInstance = instance;
console.log("Instance created");
return instance.createPage();
})
.then(page => {
sitepage = page;
console.log("createing page");
return page.open('https://paytm.com/shop/p/carrier-estrella-plus-1-5-ton-3-star-window-ac-LARCARRIER-ESTRPLAN5550519593A34?src=grid&tracker=%7C%7C%7C%7C%2Fg%2Felectronics%2Flarge-appliances%2F1-5-ton-3-star-ac-starting-at-rs-22699%7C88040%7C1');
})
.then(status => {
//console.log(status);
console.log("getting content of page");
return sitepage.property('content');
})
.then(content => {
console.log("success");
//console.log(content);
fs.writeFile("ok.text", content);
sitepage.close();
phInstance.exit();
})
.catch(error => {
console.log("errr");
//console.log(error);
phInstance.exit();
});
上面是代碼,我正在嘗試加載一個動態網頁,它是用角框架構建的。
任何人都可以指導我相同或正確的上述代碼,我錯過了正確的事情。
太寬泛的一個問題。如果您遇到確切問題,請描述它,並提供錯誤消息。 – Vaviloff
我沒有遇到任何問題。或任何錯誤。我只是想知道熱的廢棄與js框架構建的網頁 –
然後問具體。 '但是當渲染動態頁面時它失敗'它是如何失敗的?有什麼錯誤?只是目前你的問題太廣泛了,我們無法幫助你。 「如何刮動態網站?好...使用PhantomJS」 – Vaviloff