Digikey kendi web sitesini değiştirdi ve şimdi posta yoluyla yük olarak adlandırılan bir javascript var. Bu eski basit java HTML kod geri alıcımı öldürdü. HTML/metni kaydetmeden önce javascript'in çalıştırılmasına izin vermek için PhantomJS'yi kullanmaya çalışıyorum.PhantomJS sayfa dökümü komut dosyası hatası
var page = new WebPage(),
t, address;
var fs = require('fs');
if (phantom.args.length === 0) {
console.log('Usage: save.js <some URL>');
phantom.exit();
} else {
address = encodeURI(phantom.args[0]);
page.open(address, function (status) {
if (status !== 'success') {
console.log('FAIL to load the address');
} else {
f = null;
var markup = page.content;
console.log(markup);
try {
f = fs.open('htmlcode.txt', "w");
f.write(markup);
f.close();
} catch (e) {
console.log(e);
}
}
phantom.exit();
});
}
Bu kod çoğu web sayfalarında ile çalışır ancak başarısız: benim test durumdur
http://search.digikey.com/scripts/dksearch/dksus.dll?keywords=S7072-ND
. URL'yi açamaz ve daha sonra PhantomJS çöküyor. Win32 statik yapısını kullanma 1.3.
Herhangi bir ipucu?
Temelde neyim dosya kaydetmeden önce belgeyi değiştiren sayfa oluşturma ve komut dosyaları ile rekabet eden bir wget.