BusInfo.js 1.62 KB
let request = require('request');
let cheerio = require('cheerio');

const bus_url = 'http://apis.data.go.kr/6410000/busarrivalservice/getBusArrivalList';
const bus_key = 'RwxSWXH88b2bKOAT6Ot3FHorPZQW9omma0xYIjtJe0JIKe4DC7TjX7Uj6E1ArzYi2AvVETmPrAIYyY8FlL%2BfAA%3D%3D';
const stationID = '228000708';  

const BusArrivalUrl = bus_url + '?servicekey=' + bus_key + '&stationId=' + stationID;// 사색의광장 정류장 버스 도착 정보 조회용
console.log(BusArrivalUrl);

const _sleep = (delay) => new Promise((resolve) => setTimeout(resolve, delay));
var routeID = [];
var BusNum = [];
request(BusArrivalUrl, (err, res, body) => {
    var $ = cheerio.load(body, {decodeEntities: false});

    $('busArrivalList').each(function(idx){
        let route = $(this).find('routeId').text();
        routeID.push(route);
    })
    console.log(routeID);
})

const route_url = 'http://apis.data.go.kr/6410000/busrouteservice/getBusRouteInfoItem';
const route_key = 'RwxSWXH88b2bKOAT6Ot3FHorPZQW9omma0xYIjtJe0JIKe4DC7TjX7Uj6E1ArzYi2AvVETmPrAIYyY8FlL%2BfAA%3D%3D';

var j = 0;
function getBusNum(){
    let BusRouteUrl = route_url + '?servicekey=' + route_key + '&routeId=';
    BusRouteUrl += routeID[j++];
    console.log(BusRouteUrl);

    request(BusRouteUrl, (err, res, body) => {
        var $ = cheerio.load(body, {decodeEntities: false});
        $('busRouteInfoItem').each(function(idx){
            let num = $(this).find('routeName').text();
            BusNum.push(num);
            console.log(num);
        })
    })
}

function useFor(){
    for(var i=0; i<routeID.length; i++){
        setTimeout(getBusNum, 1000);
    }
}
setTimeout(useFor, 500);