CasperJS и mint.com

У меня есть учетная запись на mint.com, и я ежедневно пытаюсь загрузить информацию о своих учетных записях. Я не нашел API Mint, я не думаю, что API Intuit и Yodlee будут работать.

Я хочу получить данные уже в Mint, я пытаюсь использовать CasperJS (на Raspberry PI, если это имеет значение). Прямо сейчас следующий JavaSript будет анализировать https://www.google.com просто отлично, но https://www.mint.com он просто зависает.

var links = [];
var casper = require('casper').create();

function getLinks() {
    var links = document.querySelectorAll('a');
    return Array.prototype.map.call(links, function(e) {
        return e.getAttribute('href')
    });
}

casper.start('https://www.mint.com/', function() {

});

casper.then(function() {
    links = this.evaluate(getLinks);
});

casper.run(function() {
    // echo results in some pretty fashion
    this.echo(links.length + ' links found:');
    this.echo(' - ' + links.join('\n - ')).exit();
});

выход для монетного двора

[info] [phantom] Starting...
[info] [phantom] Running suite: 3 steps
[debug] [phantom] opening url: https://wwws.mint.com/, HTTP GET
[debug] [phantom] Navigation requested: url=https://wwws.mint.com/, type=Other, lock=true, isMainFrame=true
[warning] [phantom] Loading resource failed with status=fail: https://wwws.mint.com/
[debug] [phantom] Successfully injected Casper client-side utilities
[info] [phantom] Step 2/3: done in 181787ms.
[info] [phantom] Step 3/3: done in 181893ms.
[info] [phantom] Done 3 steps in 181981ms
0 links found:
 -

вывод для гугла

[info] [phantom] Starting...
[info] [phantom] Running suite: 4 steps
[debug] [phantom] opening url: http://google.fr/, HTTP GET
[debug] [phantom] Navigation requested: url=http://google.fr/, type=Other, lock=true, isMainFrame=true
[debug] [phantom] Navigation requested: url=http://www.google.fr/, type=Other, lock=true, isMainFrame=true
[debug] [phantom] url changed to "http://www.google.fr/"
[debug] [phantom] Successfully injected Casper client-side utilities
[info] [phantom] Step 2/4 http://www.google.fr/ (HTTP 301)
[info] [remote] attempting to fetch form element from selector: 'form[action="/search"]'
[debug] [remote] Set "q" field value to casperjs
[info] [remote] submitting form to /search, HTTP GET
[info] [phantom] Step 2/4: done in 1901ms.
[debug] [phantom] Navigation requested: url=http://www.google.fr/search?hl=fr&source=hp&q=casperjs&gbv=2, type=FormSubmitted, lock=true, isMainFrame=true
[debug] [phantom] url changed to "http://www.google.fr/search?hl=fr&source=hp&q=casperjs&gbv=2"
[debug] [phantom] Successfully injected Casper client-side utilities
[info] [phantom] Step 3/4 http://www.google.fr/search?hl=fr&source=hp&q=casperjs&gbv=2 (HTTP 301)
[info] [remote] attempting to fetch form element from selector: 'form[action="/search"]'
[debug] [remote] Set "q" field value to phantomjs
[info] [remote] submitting form to /search, HTTP GET
[info] [phantom] Step 3/4: done in 4675ms.
[debug] [phantom] Navigation requested: url=http://www.google.fr/search?q=phantomjs&hl=fr&gbv=2&oq=&gs_l=, type=FormSubmitted, lock=true, isMainFrame=true
[debug] [phantom] url changed to "http://www.google.fr/search?q=phantomjs&hl=fr&gbv=2&oq=&gs_l="
[debug] [phantom] Successfully injected Casper client-side utilities
[info] [phantom] Step 4/4 http://www.google.fr/search?q=phantomjs&hl=fr&gbv=2&oq=&gs_l= (HTTP 301)
[info] [phantom] Step 4/4: done in 6478ms.
[info] [phantom] Done 4 steps in 6552ms
22 links found:
 - /url?q=http://casperjs.org/&sa=U&ei=SLQ6UbawMYOE9QSlooD4Bw&ved=0CBwQFjAA&usg=AFQjCNEivptk0tQ6060ZeJF2ZO7BDHisuQ
 - /url?q=http://casperjs.org/installation.html&sa=U&ei=SLQ6UbawMYOE9QSlooD4Bw&ved=0CB8QqwMoADAA&usg=AFQjCNEgDNPxz-NyxPI-XdGxcMM92VMu1g
 - /url?q=http://casperjs.org/quickstart.html&sa=U&ei=SLQ6UbawMYOE9QSlooD4Bw&ved=0CCAQqwMoATAA&usg=AFQjCNG1J2w6fPKdK_mASYGxFsnAWp21fw

CasperJs --версия 1.0.0-RC4.

PhantomJs был скомпилирован для RaspberryPI -> версия https://github.com/piksel/phantomjs-raspberrypi 1.7.0

Простой wget загрузит html, поэтому у меня не должно быть настроек или я неправильно настроил CasperJs? Другие веб-сайты с поддержкой javascript анализируются нормально, но для Mint я ничего не получаю?


person Phatness    schedule 09.03.2013    source источник
comment
Попробуйте использовать другой пользовательский агент — я не удивлюсь, если банковский сайт заблокирует PhantomJS.   -  person Rich Bradshaw    schedule 09.03.2013
comment
Ваш скрипт у меня работает с последним мастером. Кроме того, вы можете проверить, поддерживается ли SSL на вашем устройстве.   -  person NiKo    schedule 10.03.2013


Ответы (1)


Я думаю, что в журнале есть орфографическая ошибка...

opening url: https://wwws.mint.com/

есть ли www в вашем URL?

person user1226320    schedule 17.04.2013
comment
Это настоящий улов! :) - person Vaviloff; 25.12.2015