【发布时间】:2020-11-06 04:52:04
【问题描述】:
我一直在使用以下YOUTUBE TUTORIAL 来学习如何使用网络抓取。由于特定的WEBSITE 更改了它们的核心结构,我已经设法完成了本教程并进行了一些修改。本教程使用的代码可以在这里找到:https://github.com/beaucarnes/fcc-project-tutorials/blob/master/node-web-scraping/index.js。现在我想修改这段代码,以便它可以实现我的目标:
“使用来自另一个网站 ec.europa.eu 的搜索引擎,并尝试将该页面中的数据(即 JOB-TITLE)返回到我的 NODE 控制台。”
在 YouTube 教程中,调用来检索数据的事件是由演示者指定的,但实际上并没有解释他是如何使用它的。在我要检索信息的网站中,该页面上调用了 390 个事件。我想确定提交时搜索引擎调用了哪个Request-URL。截图如下:
我已经搜索了这些事件,并试图找到搜索引擎调用的事件。我在图中突出显示了对我来说更有意义的事件名称,但我不确定是否是这种情况。
我还尝试在 Stack Overflow 的搜索引擎中查找调用的事件 (Request-URL),但找不到从 Inspector>Networks 调用的 JS 事件。
我的目标是确定在任何网站中调用的特定事件。任何信息都会非常感谢,谢谢! :D
更新:
const cheerio = require('cheerio');
const Table = require('cli-table');
const rp = require('request-promise');
const talbe = new Table({
head: ['Job Title', 'URL']
});
const options = {
url: 'https://ec.europa.eu/eures/eures-searchengine/page/jv-search/search?lang=en&app=2.4.1-build-2',
json: true
}
rp(options).then(
(data) => {
console.log("DONE");
}
).catch(
(err) => {
console.log(err);
}
);
这将返回以下错误:
StatusCodeError: 500 - undefined
at new StatusCodeError (C:\Users\loizo\Desktop\eures_test\node_modules\request-promise-core\lib\errors.js:32:15)
at Request.plumbing.callback (C:\Users\loizo\Desktop\eures_test\node_modules\request-promise-core\lib\plumbing.js:104:33)
at Request.RP$callback [as _callback] (C:\Users\loizo\Desktop\eures_test\node_modules\request-promise-core\lib\plumbing.js:46:31)
at Request.self.callback (C:\Users\loizo\Desktop\eures_test\node_modules\request\request.js:185:22)
at Request.emit (events.js:315:20)
....
【问题讨论】:
标签: javascript jquery node.js web-scraping