自己寫的油猴指令碼 —— 貝殼網自動計算實際使用面積

thebestxt發表於2021-10-26

最近在看房,準備衝一波。逛貝殼網的時候發現只展示了標註面積。由於有「公攤」這個東西的存在,導致我們房子到手後和標註的面積不一樣。為了在貝殼上看房的時候有一個好的體驗,能更快的獲取到房子的實際使用面積,我寫了這麼個指令碼。

實現效果

自己寫的油猴指令碼 —— 貝殼網自動計算實際使用面積

使用頁面上提供的資訊計算實際使用面積和得房率,讓公攤無處可逃。

這個資料是使用頁面下方的每個房間的面積加起來(如下圖)算的。如果這個頁面上沒有這部分資訊,那麼就算不出來。

自己寫的油猴指令碼 —— 貝殼網自動計算實際使用面積

至於油猴怎麼用,就不用我講了吧~不知道油猴的話,把程式碼全部複製到瀏覽器控制檯執行也是可以的。

最後是全部的程式碼。

// ==UserScript==
// @name         貝殼網自動計算實際使用面積
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       xt
// @match        https://*.ke.com/*
// @icon         https://www.google.com/s2/favicons?domain=ke.com
// @grant        none
// ==/UserScript==

(function() {
    // 計算實際使用面積
    var sum = 0;
    var d = document.getElementById('infoList').getElementsByClassName('row')
    var rows = []
    for (var i in d) (
        rows.push(d[i])
    )
    rows.map(v => {
        if (typeof v == 'object') {
            sum += (v.getElementsByClassName('col')[1].innerText.replace('平米', '') - 0)
        }
    })

    // 獲取標註面積
    var vituralS = document.getElementsByClassName('mainInfo')[2].innerText.replace('平米', '') - 0

    var C = document.createElement('div')
    C.classList.add('area')
    var C1 = document.createElement('div')
    C1.classList.add('mainInfo')
    C1.innerText = `${Math.round(sum)} (${sum}) 平米`
    C1.style.color = 'red'
    C1.style.fontSize = '15px'
    var C2 = document.createElement('div')
    C2.classList.add('subInfo')
    C2.innerText = `實際使用面積`
    C2.style.color = 'red'
    C.append(C1)
    C.append(C2)
    var CC = document.createElement('div')
    CC.classList.add('area')
    var C3 = document.createElement('div')
    C3.classList.add('mainInfo')
    C3.innerText = `${Math.round(sum / vituralS * 100)}%`
    C3.style.color = 'red'
    var C4 = document.createElement('div')
    C4.classList.add('subInfo')
    C4.innerText = `得房率`
    C4.style.color = 'red'
    CC.append(C3)
    CC.append(C4)
    C.style.marginTop = '20px'
    CC.style.marginTop = '20px'
    document.getElementsByClassName('houseInfo')[0].append(C)
    document.getElementsByClassName('houseInfo')[0].append(CC)
    // Your code here...
})();
本作品採用《CC 協議》,轉載必須註明作者和本文連結
從前從前,有個人愛你很久

相關文章