URL中的增加值,以便从符合属性的属性中解析数据



我正在使用GreaseMonKey脚本工作,并希望从属性中调整特定值。问题是,我想要的属性值是分页的。我尝试更改URL,以查看它是否可以列出一页中的所有内容,但没有运气。它总是限制每页仅40的视图。

我想知道实现此目的的最佳方法是否是通过使用然后语句。

来增加URL中的值。

例如,如果存在某个元素(.Standard-Row),则URL中的 start = 0 将增加40 to start = 40 ,然后如果再次存在特定元素(.Standard-Row),则自动重新加载增量的URL并再次扫描,而另外40个元素开始到 start = 80 。一直在存储每个页面获取其属性值。

当特定元素(.standard-Row)不再可见时,它将移至对其收集的属性值进行计数。

下面是我要增加的URL。我想增加的URL的部分是" start = "。

https://play.google.com/store/account?start=0&num=40

我下面列出的代码是我用来调整属性值的内容。它非常适合一页,但是,我想从分页页面中获取所有属性值。如果可能的话。

var total = 0;
$("#tab-body-account .rap-link").each(function() {
  var price = +($(this).attr("data-docprice").replace(/[^d.]/g, ""));
  total += price;  
});
$('.tabbed-panel-tab').before('<div id="SumTotal">*Combined Value: $'+ total.toFixed(2) +'</div>');

事先感谢您的任何建议。

使用GM_setValue()GM_getValue()存储页面之间的总数。检查start参数的状态以及是否存在.standard-row元素。

类似的东西:

var startParam      = location.search.match (/bstart=(d+)/i);
if (startParam) {
    var totalPrice  = 0;
    var startNum    = parseInt (startParam[1], 10);
    if (startNum    === 0) {
        GM_setValue ("TotalPrice", "0");
    }
    else {
        totalPrice  = parseFloat (GM_getValue ("TotalPrice", 0) );
    }
    $("#tab-body-account .rap-link").each( function () {
        var price   = $(this).attr ("data-docprice").replace (/[^d.]/g, "");
        if (price) {
            price   = parseFloat (price);
            if (typeof price === "number") {
                totalPrice += price;
            }
        }
    } );
    //console.log ("totalPrice: ", totalPrice.toFixed(2) );
    $('.tabbed-panel-tab').before (
        '<div id="SumTotal">*Combined Value: $'+ totalPrice.toFixed(2) +'</div>'
    );
    GM_setValue ("TotalPrice", "" + totalPrice);
    if ( $(".standard-row").length ) {
        startNum       += 40;
        var nextPage    = location.href.replace (
            /bstart=d+/i, "start=" + startNum
        );
        location.assign (nextPage);
    }
}


注意:
确保将@grant指令用于GM_函数。喜欢:

// ==UserScript==
// @name     _YOUR SCRIPT NAME
// @include  http://YOUR_SERVER.COM/YOUR_PATH/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @grant    GM_setValue   
// @grant    GM_getValue   
// ==/UserScript==

最新更新