Skip to content

Instantly share code, notes, and snippets.

@benregn
Created April 6, 2015 12:15
Show Gist options
  • Save benregn/83d39ef23bc4c7c21dde to your computer and use it in GitHub Desktop.
Save benregn/83d39ef23bc4c7c21dde to your computer and use it in GitHub Desktop.
Extract waiting list numbers from bdk.dk
// https://www.bdk.dk/min-profil/mine-opskrivninger.aspx
var csv = [['Company name', 'Apartment section', 'Number of rooms', 'Active number', 'Passive number']];
$('#basketAccordion .panel-default').each(function (index, panel) {
var $panel = $(panel);
var apartmentCompanyName = $.trim($panel.find('.panel-title').text());
console.log('---' + apartmentCompanyName + '---');
$panel.find('.panel-body').each(function (index, panelBody) {
$(panelBody).children().each(function (index, apartmentSection) {
var $apartmentSection = $(apartmentSection);
if ($apartmentSection.hasClass('ng-scope')) {
var apartmentSectionName = $apartmentSection.find('.imgGal strong').text();
console.log(apartmentSectionName);
$apartmentSection.find('table > tbody > tr').each(function (index, apartment) {
var $apartment = $(apartment);
var csvApartment = [];
var numRooms = $.trim($apartment.find('td:nth-child(1)').text());
var activeNum = $.trim($apartment.find('td:nth-child(4)').text());
var passiveNum = $.trim($apartment.find('td:nth-child(5)').text());
csvApartment.push(apartmentCompanyName);
csvApartment.push(apartmentSectionName);
csvApartment.push(numRooms);
csvApartment.push(activeNum);
csvApartment.push(passiveNum);
csv.push(csvApartment);
console.log(numRooms + ' - ' + activeNum + ' - ' + passiveNum);
});
}
});
});
});
var csvString = '';
csv.forEach(function(apartment, index){
var dataString = apartment.join(';');
csvString += index < csv.length ? dataString + '\n' : dataString;
});
//console.log(csvString);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment