Remplissage de formulaire d'identification avec des zombies dans node.js

Soir! Je suis en train de vous connectez sur un site web avec zombie.js mais je ne semble pas être capable de le faire fonctionner.
Oh, et le site est en finnois, mais ce n'est pas très difficile à comprendre, les deux champs de texte et un bouton. La première est pour le nom d'utilisateur, le second mot de passe et le bouton est le bouton se connecter.

Pour le moment mon journal dans le code est comme suit:

var Browser = require("zombie");
browser = new Browser();
browser.visit("https://www.nordnet.fi/mux/login/startFI.html?cmpi=start-loggain",
    function () {
        //Here I check the title of the page I'm on.
        console.log(browser.text("title"));
        //Here I fill the needed information.
        browser.document.getElementById("input1").value ="MYUSERNAME";
        browser.document.getElementById("pContent").value ="MYPASSWORD";
        //And here it fails. I try to submit the form in question.
        browser.document.getElementById("loginForm").submit();
        setTimeout(function () {
            //This is here to check that we've submitted the info and have been
            //redirected to a new website.
            console.log(browser.text("title"));
        }, 2000);
});

Maintenant je sais que je devrait peut-être avoir utilisé zombie "remplir" la méthode, mais j'ai essayé avec pas de chance alors, j'ai essayé quelque chose de nouveau.

Tout ce que j'obtiens c'est une erreur:

Y:\IMC\Development\Web\node_modules\zombie\lib\zombie\forms.js:72
  return history._submit(_this.getAttribute("action"), _this.getAttribute(
                 ^
TypeError: Cannot call method '_submit' of undefined

Maintenant, si je me connecte que browser.document.getElementById("loginForm") elle n'a évidemment de trouver la forme, mais hélas, il ne l'aime pas pour une raison quelconque.

J'ai aussi essayé le "classique" avec zombie, qui consiste à utiliser que le bouton de connexion sur la page web et en l'appuyant. Le problème est qu'il n'est pas vraiment un bouton, juste une image qui a un lien attaché à elle, et c'est tout à l'intérieur <span>. Et je n'ai aucune idée de comment je pouvez "cliquer" sur le bouton.

Il n'a pas d'ID, donc je ne peux pas l'utiliser, alors j'ai essayé d'utiliser le texte sur elle, mais parce qu'il a des trémas sur elle je peux pas le faire fonctionner. S'échapper de la ä avec /344 seulement donné une erreur:

throw new Error("No BUTTON '" + selector + "'");
        ^
Error: No BUTTON 'Kirjaudu sisään'

Alors oui, ça n'a pas marché, mais je n'ai aucune idée de pourquoi il ne reconnaît pas échappé tréma correctement.

C'est ma première question, la seconde est un mineur, mais j'ai bien pourquoi ne pas demander ici aussi maintenant que j'ai écrit ce texte.

Si je reçois tout cela fonctionne, je peux en quelque sorte de copie du cookie que ce journal dans les me donne, et de l'utiliser dans mon YQL pour la capture d'écran? Fondamentalement, je suis en train de gratter de la bourse des valeurs, mais sans le connecter les valeurs sont 15min différé, ce qui n'est pas trop mal, mais j'aimerais qu'il soit vivre de toute façon.

OriginalL'auteur Petri Mustonen | 2012-08-23