Guest User

Untitled

a guest
Nov 20th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. const R = require('ramda')
  2. const request = require('request')
  3. const cheerio = require('cheerio')
  4. const host = ''
  5. const refreshInterval = 5000
  6. const sortByScore = R.sortWith([R.descend(R.prop('score'))])
  7.  
  8. function getScores(data) {
  9. const $ = cheerio.load(data)
  10. let rawScores = $('#results').text().trim().split(' | ')
  11. let scores = rawScores.map(s => {
  12. const [name, score] = s.split(' - ')
  13. return { name, score: parseInt(score, 10) }
  14. })
  15. return sortByScore(scores)
  16. }
  17.  
  18. function handleResult(err, res, body) {
  19. if (!err && res.statusCode === 200) {
  20. const scores = getScores(body)
  21. const { name, score } = scores[0]
  22. const { name: loserName, score: loserScore } = scores[1]
  23. const diff = score - loserScore
  24. console.log(`${name} is the leader with ${score} points, a whopping ${diff} more points than ${loserName} who only has ${loserScore} points`)
  25. }
  26. }
  27.  
  28. function vote() {
  29. request.get(host, handleResult)
  30. }
  31.  
  32. setInterval(vote, refreshInterval)
Add Comment
Please, Sign In to add comment