私はちょうど悪夢を使用し始めました。 テスト目的で私のWebページで使用していました。悪夢の選択された要素の動的リストで連続してクリック操作を実行します
私は以下のユーザーインターフェイスを持っています。
メニュー
TAB1 |タブ2 |選択したタブ
selected tab data
ためTAB3 ......(動的に生成されたタブ)
コンテナのdivが、私はメニューが含まれているDOM要素を得ました。
各タブをクリックして選択したタブデータを取得する方法を知りません。
ドキュメントを読んだ後、私はこれを理解できませんでしたが、これについての例はありません。
私はこれを行うことができました -
var Nightmare = require('nightmare');
var nightmare = Nightmare({ show: true });
nightmare
.goto('http://www.example.com')
.wait('#menu')
.evaluate(function() {
var menuDiv = document.querySelector('div#menu.content-disp');
var menuAnchors = menuDiv.querySelectorAll('a[href]');
var res = "";
for(var i =0;i<menuAnchors.length;i++){
res+=menuAnchors[i].innerText;
}
return res;
})
.end()
.then(function (result) {
console.log(result)
})
.catch(function (error) {
console.error('Search failed:', error);
});
私はあなたがアンカーのリストを構築した後、あなたが反復処理する必要があります悪夢バージョン
"dependencies": {
"nightmare": "^2.8.1"
}
これは素晴らしいことです。あなたのこの回答は私を助けましたhttp://stackoverflow.com/questions/38772060/moving-between-pages-and-scraping-as-i--with-nightmare/38808596#38808596 これは悪夢のギタバブの公式の私の文書を読もうとしているはずです - 「非同期操作とループ」は悪夢の例です。 – WitVault
@WitVault私は、ナイトメアにgithub pagesブランチを追加し、近い将来、ある時点で「悪夢の例」のすべてではないにしてもほとんどをマージすると思う。 – Ross
本当に役に立ちます。あなたは悪夢に貢献していますか? – WitVault