gpt4 book ai didi

javascript - 如何在 Node.js 中使用 request 获取内部 HTML 代码?

转载 作者:太空宇宙 更新时间:2023-11-04 01:25:29 29 4
gpt4 key购买 nike

我正在尝试抓取网页以了解当前的火车时刻表。我正在使用“请求”来获取 html。但是,我想要抓取的网页使用 JavaScript 来填充包含计时的表格。这意味着我想要获取的时间位于innerHTML 中,并且据我所知(不是那么远;P),请求返回outerHTML。

所以我的问题是如何使用请求获取innerHTML代码?如果请求不能满足要求,我应该使用什么?

代码:

const request = require('request');
const cheerio = require('cheerio');


request('<The Webpage URL>',(error,response,html) =>
{
if(!error && response.statusCode == 200)
{
const $ = cheerio.load(html);
const stationName = $('#headerText').text().trim();
const Departures = $('.departure departure_noics departure_odd');
console.log($.text());
}
});

最佳答案

要抓取动态页面,您需要一个 headless 浏览器,例如 PhantomJS .

获取数据的另一种方法是检查站点是否发出 XHR 请求并加载数据。然后就可以直接使用访问到的JSON了。

如果数据已存在于加载的 HTML 中,您还可以尝试通过其他方式提取它(正则表达式、搜索替换)。

关于javascript - 如何在 Node.js 中使用 request 获取内部 HTML 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57682981/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com