我正在按照 NodeJS 教程进行网络抓取,当我将鼠标悬停在箭头函数中的元素上时,我收到以下警告。
`未知参数类型不可分配给参数类型 BasicAcceptedElems |字符串 |未定义
类型未知不能分配给类型 Cheerio
这是我的代码,完全按照课程所示编写:
const request = require("request-promise");
const cheerio = require("cheerio");
const fs = require("fs"); // save a file
async function main() {
const html = await request.get("https://reactnativetutorial.net/css-selectors/");
fs.writeFileSync("./test.html", html);
let $ = await cheerio.load(html);
$("h2").each((index, element) => {
console.log($(element));
})
}
main();
正在使用的网站只是非常基本的 HTML。
我在 IntelliJ IDE 中执行此操作。我的输出中没有出现任何错误,如果我改为尝试拉取单个 HTML 标记,我也能够成功获得输出。出于某种原因,我只是遇到了 .each() 的问题。
我已经尝试用几种不同的方式重写 .each 函数来删除错误行,但我仍然没有得到任何输出。我还尝试使用 Typescript 看看我是否可以给所有类型,但这只是打开了一堆其他问题并且比我需要的更混乱。
Cheerio 几乎以相同的方式编写了一个 .each() 函数,所以我现在不确定该去哪里。