Mengisi formulir HTML dari server Node.js

Saya ingin mengisi kolom input formulir HTML, mengirimkan dan mengambil isi halaman. Saya menemukan modul bernama form-scraper tetapi kode saya memberi saya kesalahan ini:

Tidak dapat membaca properti 'dapatkan' yang tidak terdefinisi di 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": "[email protected]"};

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

Bantuan atau saran apa pun tentang cara melakukannya dihargai secara berbeda!


person Gogo    schedule 29.04.2018    source sumber


Jawaban (1)


Saya tahu kode yang Anda berikan sama dengan contoh di sini. Namun contohnya sedikit salah. Anda harus meneruskan request ke metode create.

Coba ini:

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": "[email protected]"};

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

Dan Anda tidak perlu menginstal paket "request" karena paket tersebut sudah menjadi ketergantungan dan karenanya sudah terinstal

person Devansh J    schedule 29.04.2018