Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从Node.js服务器填写HTML表单_Javascript_Node.js_Web Scraping - Fatal编程技术网

Javascript 从Node.js服务器填写HTML表单

Javascript 从Node.js服务器填写HTML表单,javascript,node.js,web-scraping,Javascript,Node.js,Web Scraping,我想填充HTML表单的输入字段,提交和检索页面主体。我发现一个名为的模块,但我的代码显示以下错误: 无法读取Function.get(/Users/../node\u modules/promisified request/promisified request.js:21:69)处未定义的属性“get” 任何关于如何进行的帮助或建议,我们都将不胜感激 我知道您给出的代码与示例相同。但这个例子有点不正确。您必须将请求传递给创建方法 试试这个: var request = require("req

我想填充HTML表单的输入字段,提交和检索页面主体。我发现一个名为的模块,但我的代码显示以下错误:

无法读取Function.get(/Users/../node\u modules/promisified request/promisified request.js:21:69)处未定义的属性“get”


任何关于如何进行的帮助或建议,我们都将不胜感激

我知道您给出的代码与示例相同。但这个例子有点不正确。您必须将
请求
传递给
创建
方法

试试这个:

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”
包,因为它已经是一个依赖项,因此已经安装了

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);
});