我想從頁面http://empres-i.fao.org/empres-i/2/obd?idOutbreak=225334&rss=t刮數據。這些數據包含在幾個似乎是使用javascript動態生成的表中。 html源代碼僅顯示容器(編號爲container1
和container2
),但不包含實際的數據本身。我試着用下面的代碼phantomjs沒有評估javascript表
var url = 'http://empres-i.fao.org/empres-i/2/obd?idOutbreak=225334&rss=t';
var page = require('webpage').create();
page.open(url, function() {
console.log(page.content);
phantom.exit();
});
我的計劃是使用phantomjs刮評估HTML,然後提取我需要使用R.我知道數據使用phantomjs(2.1.1版本)。在Windows 10系統,R可能不是最好的工具,但這是我最熟悉的,也是我們公司使用的。
使用上面的代碼,我也只是得到未評估的源代碼與空容器,而不是數據(因爲我例如得到當我手動保存在Firefox的網頁)。爲什麼phantomjs不評估JavaScript?我能做些什麼來訪問數據?
我幾乎沒有webscaping的經驗,如果有人能指出我正確的方向,我會非常感激。正如丹澤爾華盛頓喜歡在費城說的那樣,「請給我解釋一下,好像我六歲那樣。」謝謝!
哇,我不知道那件事。謝謝! – ikop