You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js网页抓取运行axios代码报ECONNREFUSED错误无HTML返回

报错原因
  • 核心问题是你定义的目标站点地址siteUrl = 'coinmarketcap.com'缺失HTTP协议标识(https://或http://)。axios解析无协议的URL时,会默认将其判定为本地相对路径,自动拼接本地回环地址127.0.0.1和默认80端口发起请求,由于你本地没有运行对应端口的Web服务,因此触发ECONNREFUSED连接被拒绝错误,请求根本没有发送到coinmarketcap的官方服务器,自然拿不到目标网页的HTML内容。
  • 额外注意:即使补全协议,axios返回的响应是完整响应对象,网页HTML内容存储在响应的data属性下,直接打印响应对象不会输出纯HTML字符串。部分站点有反爬策略,缺失浏览器标识的请求可能会被拦截,建议自定义User-Agent请求头。
修复后可运行代码
const axios = require('axios')
const cheerio = require('cheerio')

async function getPriceFeed() {
  try{
    // 补全HTTPS协议头
    const siteUrl = 'https://coinmarketcap.com'
    const response = await axios({
      method: 'GET',
      url: siteUrl,
      // 添加浏览器UA,降低被反爬拦截的概率
      headers: {
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
      }
    })
    // 打印响应体中的HTML内容
    console.log(response.data)
  } catch (err) {
    console.error(err)
  }
}

getPriceFeed()

内容的提问来源于stack exchange,提问作者MachDiscord

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 15:12:01