Question

Je viens d'un milieu de calcul scientifique et ont une certaine histoire avec certaines langues populaires et la programmation non-populaires (ad hoc) mais je suis tout à fait étranger à la programmation côté client et JavaScript.

J'ai écrit quelques JavaScript trivial pour mes paramètres Greasemonkey avant, mais c'est tout.

Mes préoccupations question: http://www.ise.org/sirketler/sirketler.aspx

Je suis en train d'obtenir toutes les données sur les titres et les sociétés de la table donnée dans l'URL ci-dessus qui est le site de turc Bourse d'Istanbul.

Ces informations sont fournies dans une table de grille classée selon les lettres que le nom de la société et à un commence maximum de 10 lignes par grille est donnée comme on peut le voir. De plus en bas à droite de la page, il écrit combien de pages est cette info se répand.

Par exemple, vous pouvez appeler à partir de la console Firebug:

__doPostBack('ctl00$cphContent$ctl00$lbtnT','')

pour obtenir les entreprises commençant par « T » et vous pouvez parcourir les onglets de ce tableau par l'émission:

__doPostBack('ctl00$cphContent$ctl00$radGridSirketler$ctl00$ctl03$ctl01$ctl05','')
__doPostBack('ctl00$cphContent$ctl00$radGridSirketler$ctl00$ctl03$ctl01$ctl07','')
__doPostBack('ctl00$cphContent$ctl00$radGridSirketler$ctl00$ctl03$ctl01$ctl09','')

etc. pour le 1er, 2e et 3e pages de ce tableau, respectivement.

J'ai essayé de sérialisation en publiant méthode __doPostBack() pour un tableau donné de lettres et de chiffres en les enchaînant à la chaîne fixée au-dessus, mais il n'a pas réussi.

Alors, comment puis-je utiliser la méthode de __doPostBack() et ajoutez toutes ces tables sous résultantes et obtenir les données d'ensemble?

Y at-il une ressource à lire pour ce genre de tâches?

Je présente mes excuses pour ma question amateur de tous les pirates JS.

Était-ce utile?

La solution

Espérons que cet exemple éclairera votre chemin:

// ==UserScript==
// @name           Examples : sirketler
// @namespace      http://gm.wesley.eti.br/examples
// @description    Simulation of an aspx PostBack request
// @include        http://www.ise.org/sirketler/sirketler.aspx
// @require        http://userscripts.org/scripts/source/63808.user.js
// @require        http://userscripts.org/scripts/source/89515.user.js
// ==/UserScript==

AspxPostBackRequest({
    "url" : "http://www.ise.org/sirketler/sirketler.aspx",
    "manager" : "ctl00$ScriptManager1",
    "eventTarget" : "ctl00$cphContent$ctl00$lbtnT",
    "callback" : function(xhr)
    {
        var content = document.createElement("div");
        content.innerHTML = xhr.responseText.split("|")[3];

        alert(xpath("./div/table/tbody/tr", content).map(function(row)
        {
            return [].slice.call(row.cells).map(function(col)
            {
                return col.textContent.replace(/^\s+|\s+$/gm, "");
            });
        }).join("\n"));
    }
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top