我想爬這是使用pdf.js Example爬行使用CasperJS
的問題是一些DOM元素都出現在Firebug但不是在頁面的源代碼做了一個PDF文件的內容的PDF文件,所以每當我嘗試抓取時,我都會看到空白的pdf頁面。
我用NightWatchJs試過同樣的東西,但它的工作,但爲了一些特定的目的,我想堅持CasperJS。
這裏是我的代碼
var casper = require('casper').create({
verbose: true,
logLevel: 'debug',
userAgent: 'Mozilla/5.0 poi poi poi (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22',
contentType: 'application/pdf',
viewportSize: {
width:2000,
height:1000
},
pageSettings: {
javascriptEnabled: true,
loadImages: true,
loadPlugins: true
}
});
var fs = require('fs');
casper.start('https://mozilla.github.io/pdf.js/web/viewer.html', function() {
this.waitForSelector("#pageContainer1", function check() {
var pdfContent = this.getPageContent();
fs.write('/var/www/caspersJS/pdf_check.html', pdfContent, 'w+');
this.capture('/var/www/caspersJS/pdf_check.png', {
top:0,
left:0,
height:2368,
width:2024,
format: 'png',
quality: 100
});
}, function then() {
var pdfContent = this.getPageContent();
fs.write('/var/www/caspersJS/pdf_then.html', pdfContent, 'w+');
this.capture('/var/www/caspersJS/pdf_then.png', {
top:0,
left:0,
height:2368,
width:2024,
format: 'png',
quality: 100
});
}, 60000);
});
casper.run();
Hi Artjom B. 如果您打開[link](https://mozilla.github.io/pdf.js/web/viewer.html),您將看到pdf內容爲「基於跟蹤的Just-in-時間類型專業化動態「。我想抓取該內容。 – Khwab
如果您只需要文本內容,則不必使用casper或phantom,只需使用API即可獲取文本內容。見https://github.com/mozilla/pdf.js/blob/master/examples/node/getinfo.js – async5
嗨Artjom ..如果你看到我的腳本,我等待60秒,該id被加載,但問題是pdf不是隻加載。我通過捕獲屏幕證實了這一點。 – Khwab