Je viens de commencer à utiliser cauchemar. Je l'utilisais sur ma page Web à des fins de test.Effectuez une opération de clic successivement sur la liste dynamique des éléments sélectionnés dans le cauchemar js
J'ai l'interface utilisateur suivante.
Menu
tab1 | tab2 | tab3 ...... (onglets) générées dynamiquement
conteneur div pour onglet sélectionné
selected tab data
I a l'élément de dom qui contient le menu.
Je ne sais pas comment effectuer, cliquez sur chaque onglet et obtenir les données de l'onglet sélectionné. Après avoir lu les documents, je ne pouvais pas comprendre cela, ni aucun exemple pour cela.
j'ai pu faire que cela -
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);
});
J'utilise cauchemar Version
"dependencies": {
"nightmare": "^2.8.1"
}
C'est fantastique. C'est votre réponse m'a aidé http://stackoverflow.com/questions/38772060/moving-between-pages-and-scraping-as-i-go-with-nightmare/38808596#38808596. Et cela devrait être dans le document officiel me lire sur le github de cauchemar - "Opérations asynchrones et boucles" à cauchemar-exemples. – WitVault
@WitVault Je pense que je vais ajouter une branche de pages github à Nightmare et fusionner la plupart, sinon tous les 'exemples de cauchemar 'dans un avenir proche. – Ross
Ce serait vraiment utile. Êtes-vous un contributeur à cauchemar js? – WitVault