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

调用getposts函数时如何将startUrl作为参数传入且保留原有逻辑

实现方案

调整getposts函数的参数定义,将startUrl作为第一个入参,原有的callback作为第二个入参,同时删除原来全局声明的固定startUrl常量即可,修改后完整代码如下:

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

function getposts(startUrl, callback) {
  request(startUrl, function(error, response, html) {
    if (!error && response.statusCode == 200) {
      var $ = cheerio.load(html);
      $('.summary .question-hyperlink').each(function() {
        var items = $(this).text();
        var links = $(this).attr('href');
        return callback(items, links);
      });
    }
  });
}

// 调用时第一个参数传入目标链接,第二个参数保留原有回调逻辑
getposts('https://stackoverflow.com/questions/tagged/web-scraping', (item,link) => console.log({item,link}));

核心修改点

  • 给getposts函数新增第一个参数startUrl,替换原函数内部引用的全局startUrl变量
  • 移除全局硬编码的startUrl常量,提升灵活性
  • 调用时第一个位置传入需要抓取的站点链接即可,原有回调逻辑不需要做任何改动

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 12:18:05