Javascript 节点Js请求模块未访问网站上的正确位置

Javascript 节点Js请求模块未访问网站上的正确位置,javascript,node.js,request,Javascript,Node.js,Request,我正在尝试使用Node Js的请求模块制作一个脚本,该脚本将接受一个课程主题和编号,然后转到ASU课程目录,收集教授,并获取他们在RateMyProfessor上的分数,此时我正在尝试连接到:,这是CSE 205的站点,但是脚本改为,或者我假设类主题框是空的 这是出错时的脚本 const url = "https://webapp4.asu.edu/catalog/classlist?t=2201&s=CSE&n=205&e=all&page=1"; const

我正在尝试使用Node Js的请求模块制作一个脚本,该脚本将接受一个课程主题和编号,然后转到ASU课程目录,收集教授,并获取他们在RateMyProfessor上的分数,此时我正在尝试连接到:,这是CSE 205的站点,但是脚本改为,或者我假设类主题框是空的

这是出错时的脚本

const url = "https://webapp4.asu.edu/catalog/classlist?t=2201&s=CSE&n=205&e=all&page=1";
const request = require("request");
const cheerio = require("cheerio");

request({
  uri: url,
  jar: true
}, (error, response, body) => {
  if(!error && response.statusCode == 200) {
    const $ = cheerio.load(body);

    const test = $('#subjectEntry').html();
    console.log(test); //Always returns empty rather than "CSE"
  }
})
有没有一种方法可以让它直接进入网站的课程?如果它是一种搜索类的形式,我可以使用它,但它只是常规输入。
在任何其他网站上访问该网站都会找到正确的链接,这似乎只是Node Js访问该网站的问题。Axios和Puppeter也出现了同样的问题。

问题很简单,ASU网站加载需要时间。由于网站一打开,刮板就抓取了信息,所以什么也找不到。我只是通过创建一个sleep函数并在异步函数中使用它来修复这个问题,并使用wait来确保站点已完全加载