有一个公共网站,其来源如下:

</div><script type="text/rocketscript">
function calculateIndexIncome() {
    var khs = $('#t9').val();
    var btcusd = $('#t9_1').val();
    var btckhs = $('#t9_2').val();
    var dayprofitperkhs = 0.00000018188885404454654
    var arr = btcusd.split(' ');
    btcusd = arr[0];

    var totalinvestmentusd = ((khs * btckhs) * btcusd).toFixed(2);
    var totalinvestmentbtc = (khs * btckhs).toFixed(8);
    var dailyincomebtc = (khs * dayprofitperkhs).toFixed(8);
    var dailyincomeusd = ((khs * dayprofitperkhs) * btcusd).toFixed(2);
    var monthlyincomebtc = (dailyincomebtc * 31).toFixed(8);
    var monthlyincomeusd = (dailyincomeusd * 31).toFixed(2);
    var breakevendays = (totalinvestmentusd / dailyincomeusd).toFixed(0);
    var monthlypercentage = ((100 / breakevendays) * 30).toFixed(2);

    $('#tl').html('Total KHS: ' + khs + '<br/>Total Investment: ' + totalinvestmentbtc + ' BTC ($' + totalinvestmentusd + ' USD)<br/><br/>Daily Income: ' + dailyincomebtc + ' BTC ($' + dailyincomeusd + ' USD)<br/>Monthly Income: ' + monthlyincomebtc + ' BTC ($' + monthlyincomeusd + ' USD)<br/><br/>Break Even In: ' + breakevendays + ' Days.<br/><br/>Monthly Rate: ' + monthlypercentage + '%');
}

我需要能够提取两个值:btckhs和dayprofitperkhs。
如果我查看页面源代码,每次刷新时dayprofitperkhs都是不同的。
编辑:
吉米·钱德拉想出了这个书签:
javascript:
setInterval(logging,60000);
w1 = window.open("https://scrypt.cc/index.php");
function logging(){
console.log (w1.$('#t9_2').val());
var re=/var\s*dayprofitperkhs\s*=\s*([0-9\.]+)\s*/gi;
var matches=re.exec(document.body.innerHTML);
console.log(RegExp.$1);
w1.location.href = 'https://scrypt.cc/index.php';
}

这几乎是完美的。它得到dayprofitperkhs,但只在第一个间隔。
之后,该值不再更新,尽管t9_2已更新。。。
有人吗?

最佳答案

我不知道那个网站在哪里,所以我只是针对这个问题运行这个,但是下面的bookmarklet让我得到我想要的。。。
正如我在评论中提到的,我对文档体内部html使用正则表达式,寻找dayprofitperkhs并捕获等号右侧的数字和小数分隔符。同时尝试补偿中间的任何额外空间(\s*)。把我要找的号码给了我。

javascript:(function(){var re=/var\s*dayprofitperkhs\s*=\s*([0-9\.]+)\s*/gi;var matches=re.exec(document.body.innerHTML);console.log(RegExp.$1);}());

所以你最后的书签应该是:
javascript:
setInterval(logging,60000);
w1 = window.open("siteurl.com");
function logging(){
console.log (w1.$('#t9_2').val());
var re=/var\s*dayprofitperkhs\s*=\s*([0-9\.]+)\s*/gi;
var matches=re.exec(w1.document.body.innerHTML);
console.log(RegExp.$1);
w1.location.href = 'siteurl.com';
}

09-11 20:35