我试图在网站上收集玩家数量,但我的代码一直为空。我做错了什么?
我正在尝试抓取此网站:https://www.game-state.com/193.203.39.13:7777/我想要console.log的值是Players:x/1000
setInterval(function() {
var url = 'https://www.game-state.com/193.203.39.13:7777/';
request(url, function(err, response, body) {
var $ = cheerio.load(body);
var players = $('.value #players');
var playersText = players.text();
console.log(playersText);
})
}, 300)
您的选择器错误。
您正在选择任何ID为players
的标记,该标记位于类为value
的标记的内。您想要的是对同一元素进行两次检查。问题是.value
和#players
之间的空间-删除它:.value#players
。
小贴士:先在浏览器中试用。。。转到页面,打开devtools,输入document.querySelector('.value #players')
-您会看到它返回为空。与.value#players
一起工作。
但是,由于ID应该是唯一的,所以只要ID#players
就足够了。