gpt4 book ai didi

javascript - 如何使用CasperJS选择指定元素?

转载 作者:行者123 更新时间:2023-11-28 17:51:02 25 4
gpt4 key购买 nike

我想先选择<span>第二个 <span> ,然后获取他们的innerText。 enter image description here

但是我尝试使用xpathdocument.querySelector ,他们没有工作。我console.log我的数组显示为空。

// 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++;
});
});
});

如何选择指定元素并获取其内部文本?

最佳答案

对于您想要做的事情来说,您的代码有点太复杂了。您应该考虑将 fetchText 方法与 CSS 选择器一起使用:

var casper = require('casper').create();

casper.start('YOUR_URL', function () {
this.echo(this.fetchText('.movie_intro_info_r > span:first-of-type'));
this.echo(this.fetchText('.movie_intro_info_r > span:nth-of-type(2)'));
}).run();

关于javascript - 如何使用CasperJS选择指定元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45523903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com