Tag: scraping zombie.js

node.js中的Zombie.js无法抓取某些网站

下面的简单脚本返回一堆垃圾。 它适用于大多数网站,但不威廉山: var Browser = require("zombie"); var assert = require("assert"); // Load the page from localhost browser = new Browser() browser.visit("http://sports.williamhill.com/bet/en-gb/betting/y/5/et/Football.html", function () { browser.wait(function(){ console.log(browser.html()); }); }); 与节点一起运行 输出: S J ꪙRUݒ kf 6 Efr2 Riz ^ 0 X { ^ a yp p Ή`(S] – 'N8q /ݻU;?݇ׯ荣ٲ> -3 GEE,mFMIQ2ڊZGOJ ^ SC〜gJO缇öݎP ET n;v […]

与使用zombie.js网站抓取问题

我需要做一些networking抓取。 在玩过不同的Webtesting框架之后,其中大部分的地方要么太慢(Selenium),要么我的需求太多(env.js),我决定zombie.js看起来最有前途,因为它使用一套可靠的库HTMLparsing和DOM操作。 然而,在我看来,它甚至不支持基本的基于事件的Javascript代码,如下面的网页: <html> <head> <title>test</title> <script type="text/javascript"> console.log("test script executing…"); console.log("registering callback for event DOMContentLoaded on " + document); document.addEventListener('DOMContentLoaded', function(){ console.log("DOMContentLoaded triggered"); }, false); function loaded() { console.log("onload triggered"); } </script> </head> <body onload="loaded();"> <h1>Test</h1> </body> </html> 然后我决定手动触发这些事件: zombie = require("zombie"); zombie.visit("http://localhost:4567/", { debug: true }, function (err, browser, status) { doc = […]