当我使用$('.episode-title')时,得到的输出是
Otona no Bouguya-san S2 — 02Otona no Bouguya-san S2 — 01
我想要的输出是Otona no Bouguya-san S2 — 02 \n Otona no Bouguya-san S2 — 01
我该怎么做?
编辑1 My代码
const Nightmare = require('nightmare');
const cheerio = require('cheerio');
const url = `https://subsplease.org/shows/otona-no-bouguya-san-s2/`
const nightmare = Nightmare({ show: true })
// Request making using nightmare
nightmare
.goto(url)
.wait('body')
.wait('label.episode-title')
.evaluate(() => document.querySelector('body').innerHTML)
.end()
.then(response => {
console.log(getData(response));
}).catch(err => {
console.log(err);
});
let getData = html => {
const $ = cheerio.load(html);
let title = $('.episode-title').text()
console.log(title)
}编辑2 JSON
{
"episodes": [
{
"title": "Otona no Bouguya-san S2 — 01",
"torrents": [
{
"resolution": "1080p",
"magnet": "url",
"torrent": "url"
},
{
"resolution": "720p",
"magnet": "url",
"torrent": "url"
},
{
"resolution": "sd",
"magnet": "url",
"torrent": "url"
}
]
},
{
"title": "Otona no Bouguya-san S2 — 02",
"torrents": [
{
"resolution": "1080p",
"magnet": "url",
"torrent": "url"
},
{
"resolution": "720p",
"magnet": "url",
"torrent": "url"
},
{
"resolution": "sd",
"magnet": "url",
"torrent": "url"
}
]
}
]
}发布于 2021-01-11 21:38:51
由于.episode-title类有两个元素,所以应该使用map或forEach。这里有一个:
let titles = $('.episode-title').map((i, el) => $(el).text()).get();
console.log(titles);
// => ["Otona no Bouguya-san S2 — 02", "Otona no Bouguya-san S2 — 01"]发布于 2021-01-12 07:13:44
第一次使用:
$('.episode-title').first().text()https://stackoverflow.com/questions/65674381
复制相似问题