Ergebnis 1 bis 3 von 3
Thema: Zwei Werte teilen
-
03-12-2020, 14:22 #1
Grünschnabel
- registriert
- 03-12-2020
- Beiträge
- 1
Zwei Werte teilen
Hallo alle zusammen,
gerne möchte ich aus der Webseite von https://www.immobilienscout24.de/ einige Werte auslesen und Bearbeiten -> diese dann in der Console darstellen.
immobilienScout24.png
Die Werte werden auch in der Console angezeigt.
immobilienScout24-2.png
Was ich machen möchte:
Preis pro Quadratmeter = Preis / Wohnfläche ;
Preis pro Quadratmeter =74000/26
Leider weiß ich nicht wie ich die Werte verheiraten kann?
- console.log(entry1);
- console.log(entry1);
Kann mir jemand helfen?
Aktuell scheitere ich beim: Zwei Werte zu teilen. ( den Code benutze ich im Chrome als Tampermonkey Extension)
z.B.
Code:var crawlPrice = document.getElementsByClassName("font-nowrap"); var priceSearchstring = /\d+\.\d+/g; var crawlLivingspace = document.getElementsByClassName("font-nowrap"); var livingspaceSearchstring = /(.*) m²/g; for(var i = 0; i < crawlPrice.length; i++){ var priceResult = String(crawlPrice[i].innerHTML).match(priceSearchstring); var livingspaceResult = String(crawlLivingspace[i].innerHTML).match(livingspaceSearchstring); if (!!priceResult) { priceResult.forEach(function(entry1) { console.log(entry1); }); } if (!!livingspaceResult) { livingspaceResult.forEach(function(entry2) { console.log(entry2); }); } crawlPrice[i].style.background = "yellow"; }
-
04-12-2020, 07:57 #2
AW: Zwei Werte teilen
Division ist der Schrägstrich über der 7.
Das deutsche Javascript Forum http://forum.jswelt.de
-
08-12-2020, 15:36 #3
AW: Zwei Werte teilen
Du musst versuchen, den Preis und die Fläche in der gleichen Iteration zu bekommen. Dann musst du die Strings in Zahlen umwandeln und anschließend das Ganze ausgeben:
Code:document.querySelectorAll(".result-list-entry [data-is24-qa=attributes]").forEach(function(result){ let price, area; result.querySelectorAll("dd").forEach(function(dd){ if (dd.nextSibling.textContent.match(/preis/i)){ price = parseFloat(dd.textContent.replace(".", "").replace("€", "").trim()) } else if (dd.nextSibling.textContent.match(/fläche/i)){ area = parseFloat(dd.textContent.replace(".", "").replace(/[^0-9,]/g, "").replace(",", ".")) } }); if (price && area){ const dl = result.querySelector("dl").cloneNode(false); dl.innerHTML = `<dd class="font-nowrap font-highlight font-tabular">${(price / area).toFixed(2).replace(".", ",")} €/m²</dd><dt class="font-tabular onlyLarge font-xs font-lightgray attribute-label">Quadratmeterpreis</dt>`; result.appendChild(dl) } });
Ähnliche Themen
-
Minutenanzeige teilen
Von thinkdifferent im Forum JavaScriptAntworten: 12Letzter Beitrag: 24-03-2010, 17:30 -
String teilen
Von prufer im Forum JavaScriptAntworten: 2Letzter Beitrag: 23-11-2006, 12:12 -
Zwei werte gleich!
Von Urmel im Forum Serverseitige ProgrammierungAntworten: 4Letzter Beitrag: 10-10-2002, 10:33 -
Tabellenhg teilen?
Von Toxictype im Forum AllgemeinesAntworten: 10Letzter Beitrag: 30-08-2002, 12:08 -
ordner (teilen)
Von *u$p* im Forum AllgemeinesAntworten: 4Letzter Beitrag: 27-03-2002, 16:08
Lesezeichen