Заполнение HTML-формы с сервера Node.js. - PullRequest
0 голосов
/ 29 апреля 2018

Я хочу заполнить поля ввода формы HTML, отправить и получить тело страницы. Я нашел модуль с именем form-scraper , но мой код выдает мне эту ошибку:

Невозможно прочитать свойство 'get' из неопределенного в Function.get (/Users/.../node_modules/promisified-request/promisified-request.js:21:69)

var pRequest = require("promisified-request").create();
var fScraper = require("form-scraper");

var formStructure = fScraper.fetchForm("#mc-embedded-subscribe-form", "http://cats.com/", pRequest);

var loginDetails = {"EMAIL": "test@test.test"};

fScraper.submitForm(loginDetails, fScraper.provideForm(formStructure), pRequest).then(function(response) {
    console.log(response.body);
});

Любая помощь или предложения о том, как это сделать, оценивается по-разному!

1 Ответ

0 голосов
/ 29 апреля 2018

Я знаю, что код, который вы дали, такой же, как в примере здесь . Но пример немного некорректен. Вам нужно будет передать request методу create.

Попробуйте это:

var request = require("request")
var pRequest = require("promisified-request").create(request);
var fScraper = require("form-scraper");

var formStructure = fScraper.fetchForm("#mc-embedded-subscribe-form", "http://cats.com/", pRequest);

var loginDetails = {"EMAIL": "test@test.test"};

fScraper.submitForm(loginDetails, fScraper.provideForm(formStructure), pRequest).then(function(response) {
    console.log(response.body);
});

И вам не нужно устанавливать "request" пакет, так как он уже является зависимостью и, следовательно, уже установлен

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...