Created
March 30, 2015 20:43
-
-
Save silvasur/476624d131f4a6b23108 to your computer and use it in GitHub Desktop.
Warmmiete in Suche immowelt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Warmmiete in Suche immowelt | |
// @namespace kch42 | |
// @include http://www.immowelt.de/immobilien/immoliste.aspx* | |
// @version 1 | |
// @grant none | |
// ==/UserScript== | |
function mkinfoelem(label, data) { | |
var info = document.createElement("div"); | |
info.appendChild(document.createTextNode(data)); | |
var labeldiv = document.createElement("div"); | |
labeldiv.appendChild(document.createTextNode(label)); | |
labeldiv.classList.add("hardfactlabel"); | |
info.appendChild(labeldiv); | |
info.classList.add("hardfact"); | |
return info; | |
} | |
function procres(sr) { | |
if (sr.classList.contains("warmmiete-adder-processed")) { | |
return; | |
} | |
sr.classList.add("warmmiete-adder-processed"); | |
var href = null; | |
var links = sr.querySelectorAll("a[href]"); | |
for (var i = 0; i < links.length; i++) { | |
var _href = links[i].getAttribute("href"); | |
if (_href.match(/\/expose\//)) { | |
href = _href; | |
break; | |
} | |
} | |
if (!href) { | |
return; | |
} | |
var req = new XMLHttpRequest(); | |
req.addEventListener("load", function() { | |
var doc = this.responseXML; | |
var datarows = doc.querySelectorAll(".datarow"); | |
for (var i = 0; i < datarows.length; i++) { | |
var label = datarows[i].querySelector(".label").textContent; | |
var data = datarows[i].querySelector(".data").textContent; | |
if ( | |
!label.match(/warmmiete|gesamtmiete/i) || | |
label.match(/in\s+(warmmiete|gesamtmiete)\s+enthalten/i) | |
) { | |
continue; | |
} | |
var info = mkinfoelem(label, data); | |
var firsthardfact = sr.querySelector(".hardfact"); | |
firsthardfact.parentNode.insertBefore(info, firsthardfact); | |
break; | |
} | |
}); | |
req.open("GET", href); | |
req.responseType = "document"; | |
req.send(); | |
} | |
var search_results = document.querySelectorAll("div.divObject"); | |
for (var i = 0; i < search_results.length; i++) { | |
procres(search_results[i]); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment