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

无代码背景求助:谷歌表格连接DFBP开源库搜活性肽时JSON解析报错

解决谷歌表格App Script调用DFBP肽库接口返回JSON解析错误的问题

你遇到的SyntaxError: Unexpected token '<'错误,核心原因是目标URL返回的不是JSON格式数据,而是HTML网页内容。http://www.cqudfbp.net/proteins/subclass/source_list_display.jsp是前端展示页面,并非提供JSON数据的API接口,直接对其返回内容做JSON解析自然会失败。

以下是具体解决步骤:

  • 第一步:定位真实的搜索接口
    手动打开该jsp页面,输入搜索关键词后,打开浏览器「开发者工具-网络」面板,观察搜索操作触发的真实请求:包括接口地址、请求方式(GET/POST)、需要提交的参数格式。多数网站的搜索功能是通过POST表单提交,或是有专门的API接口,而非直接拼接URL参数。

  • 第二步:修改代码适配真实接口
    假设通过开发者工具查到真实API接口地址,且需要POST提交参数,代码可调整为:

    function openSourceSearch(query) {
      var apiUrl = "真实API接口地址";
      var options = {
        method: "post",
        contentType: "application/x-www-form-urlencoded",
        payload: {
          keyword: query,
          SearchNum: 2
          // 这里补充查到的其他必填参数
        }
      };
      var response = UrlFetchApp.fetch(apiUrl, options);
      var data = JSON.parse(response.getContentText());
      var output = [];
      for (var i = 0; i < data.results.length; i++) {
        output.push([data.results[i].title, data.results[i].url]);
      }
      return output;
    }
    
  • 第三步:处理权限与跨域问题
    若调用接口时出现权限报错,需在App Script编辑器中,进入「编辑-项目属性-范围」,确认已添加https://www.googleapis.com/auth/script.external_request权限,或在首次运行代码时完成对应权限的授权。

  • 备选方案:解析HTML提取数据
    如果网站无公开API,只能解析返回的HTML内容,可使用正则表达式或XmlService提取信息(稳定性依赖页面结构,需根据实际HTML调整):

    function openSourceSearch(query) {
      var url = "http://www.cqudfbp.net/proteins/subclass/source_list_display.jsp?SearchNum=2&keyword=" + encodeURIComponent(query);
      var response = UrlFetchApp.fetch(url);
      var html = response.getContentText();
      var output = [];
      // 示例正则,需根据页面实际HTML结构修改
      var linkRegex = /<a href="([^"]+)"[^>]*>([^<]+)<\/a>/g;
      var matchResult;
      while ((matchResult = linkRegex.exec(html)) !== null) {
        output.push([matchResult[2], matchResult[1]]);
      }
      return output;
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 19:42:20