Je veux d'abord sélectionner <span>
et ensuite <span>
, puis obtenir leur innerText. J'ai essayé d'utiliser xpath
ou document.querySelector
, ils ne fonctionnent pas. I console.log
mon tableau montre null.Comment sélectionner un élément spécifié avec CasperJS?
// I want to select first <span>
function getDate() {
var date = document.querySelector('div.movie_intro_info_r li').selectedIndex = 1;
return Array.prototype.map.call(date, function (e) {
return e.innerHTML;
});
};
// I want to select second <span>
function getMovieLength() {
var movieLength = document.querySelectorAll(x('//*[@class="movie_intro_info_r"]/span[2]'));
return Array.prototype.map.call(movieLength, function (e) {
return e.innerText;
});
};
casper.then(function() {
casper.each(movieHref, function (casper, url) {
casper.thenOpen(url, function() {
casper.waitForSelector('div.btn_gray_info.gabtn', function() {
console.log('wait for element');
});
releaseDate[urlCount] = this.evaluate(getDate);
console.log(releaseDate[urlCount]);// show null
movieLength[urlCount] = this.evaluate(getMovieLength);
console.log(movieLength[urlCount]);// show null
urlCount++;
});
});
});
Comment puis-je sélectionner tout élément spécifié et obtenir son innerText?
Merci de votre réponse vraiment, j'essayer votre code google fetchText voir l'API et d'autres codes de stackoverflow. Je ne peux toujours pas imprimer quoi que ce soit, je mets à jour le code que j'essaie sur ma question. Pouvez-vous vérifier mon code et me suggérer quelle est la prochaine étape? Merci beaucoup ! –
J'essaie de vérifier s'il existe ou non 'if (this.exists ('. Movie_intro_info_r> span: nième-de-type (2) ')) { console.log (' yes '); } else { console.log ('no'); } ' impression no. –
Ce n'est pas un problème maintenant, la raison en est que j'ai mis le code au mauvais endroit de votre suggestion. Merci pour votre aide, bénédiction. –