使用 Cheerio 的 br 标签后的目标文本

2023-12-06

我正在练习通过使用 Cheerio 进行抓取来创建 API。我正在从这个相当复杂的网站上抓取:http://www.vegasinsider.com/nfl/odds/las-vegas/

我试图在这些之后定位文本<br>锚标签内的标签<td>元素:

<td class="viCellBg1 cellTextNorm cellBorderL1 center_text nowrap" 
      width="56">
   <a class="cellTextNorm" href="/nfl/odds/las-vegas/line-movement/packers-@- 
       bears.cfm/date/9-05-19/time/2020#BT" target="_blank">
        &nbsp;<br>46u-10<br>-3½&nbsp;-10
   </a>
 </td>

下面的代码是我用来定位我想要的数据的代码。我遇到的问题是我不知道如何在之后获取该文本<br>标签。我尝试过 .find('br') 但无法让它工作。这是代码:

app.get("/nfl", function(req, res) {
  var results = [];

  axios.get("http://www.vegasinsider.com/nfl/odds/las-vegas/").then(function(response) {
    var $ = cheerio.load(response.data);

    $('span.cellTextHot').each(function(i,element) {
      // console.log($(element).text());
      var newObj = {
        time:$(element).text()
      }
      $(element).parent().children().each(function(i,thing){
        if(i===2){
          newObj.awayTeam = $(thing).text();
        }
        else if (i===4){
          newObj.homeTeam = $(thing).text();
        }
      });
      newObj.odds= $(element).parent().next().next().text().trim();
      $('.frodds-data-tbl').find('td').next().next().children().each(function(o, oddsThing){
        if(o===0){
          newObj.oddsThing = $(oddsThing).html();
        }
      });
    res.json(results);
  });
});

您可以看到我能够将此框中的所有文本输出到 newObj.odds 值。我尝试使用类似下一行的内容,其中我定位 td 元素并循环并将每一行分解为自己的 newObj 属性,例如 newObj.oddsLine1 和 newObj.oddsLine2 。

希望这是有道理的。任何帮助是极大的赞赏。


您无法使用cheerio选择文本节点,您需要使用js dom属性/函数:

$('td a br')[0].nextSibling.nodeValue

注意 $(css)[0] 将为您提供第一个元素作为 js 对象(而不是 Cheerio 对象)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Cheerio 的 br 标签后的目标文本 的相关文章

随机推荐

  • MessageBodyWriter 未找到 vogella 教程

    我正在尝试重新创建最优秀的 vogella 教程 用于使用 java JAX RS 和 Jersey 创建 REST 我正在使用带有 Java EE 视角的 eclipse Kepler tomcat 7 0 我已经创建了 Todo 类 带
  • Xcode 4.5 故事板崩溃

    很多时候 当我尝试在 Storyboard 中编辑 UILabels 时 Xcode 会崩溃 有什么想法可能导致这种情况吗 看起来它与自动布局约束之一有关 这是错误报告 Process Xcode 43938 Path Applicatio
  • 无法在 JSP 中包含 WEB-INF 目录中的 javascript 文件。

    如何使用tomcat在jsp中包含以下文件夹WEB INF includes header js中的文件 我已在 jsp 文件中包含以下内容 但它不起作用 它没有获取 header js 当我查看源代码并尝试单击 src 链接时 它显示资源
  • 如何验证共享点列表中的表单字段?

    我想在添加 编辑时验证列表项的字段并停止保存操作并提供用户在该页面本身上所做的错误信息 例如 如果我想阻止用户在保存之前根据另一个字段的特定状态保留几个字段设置 我不能将该字段设置为必填字段 使用预保存操作 将名为 PreSaveActio
  • 如何将maven版本从3.XX降级到2.2.1?

    我在构建需要 maven 2 2 1 才能构建的项目时遇到问题 如何降级maven版本 编辑 更多信息 我正在尝试从命令行构建项目 我正在本地构建这个 我当前安装的是 3 0 4 版本 您可以安装多个版本的 Maven 您没有提供很多其他必
  • 保存用户名和高分的最佳方法是什么

    在我的应用程序中 我需要保存一个双值 高分 和字符串 玩家名称 我应该使用什么来获得这个 任何想法都会很棒 谢谢 如果这就是你要节省的全部NS用户默认值应该没事 To store NSUserDefaults standardUserDef
  • sql server中的列到行?

    Table CREATE TABLE Table1 col1 INT col2 nvarchar 10 col3 INT col4 INT INSERT INTO Table1 col1 col2 col3 col4 VALUES 1 we
  • UIWebView 未完成加载?

    我的应用程序中有一个 webview 它加载大部分页面 并且加载完成时调用函数 webViewDidFinishLoad 但是 尽管页面似乎已加载 但某些页面加载并未完成 在这些情况下 void webViewDidFinishLoad U
  • 有没有办法检测 SQL Server 分层查询中的循环?

    在Oracle中 我们可以使用该函数CONNECT BY ISCYCLE检测分层查询中的循环 我尝试在 SQL Server 中做同样的事情 有没有办法做到这一点 多谢 连接记录 ID 根据记录的 ROW NUMBER 构建位图 并根据列表
  • 如何修改/部分删除 BTreeMap 中的范围?

    我正在尝试建立一个RangeSet出于一个BTreeMap 其中键是下限 值是上限 只要我只是查找东西 这就非常有效 然而 第一个变异方法让我难住了 如果我想insert我的集合的范围 我需要检查Range of my BTreeMap从尾
  • Spring JPA 的多租户

    我正在为我的 Web 应用程序寻找多租户解决方案 我想用单独的架构模型实现一个应用程序 我想每个会话都有一个数据源 为了做到这一点 我将数据源和实体管理器放在会话范围内 但这不起作用 我正在考虑在用户输入用户名和密码以及tenantId时加
  • 从钥匙串中检索 SecKey

    我正在尝试升级我从中获得的代码这个答案用于生成 CSR 从 Swift 2 到 Swift 3 我已升级大部分代码 但原始答案的实用程序块中的以下代码失败并出现错误 init 不可用 使用 withMemoryRebound to capa
  • 更改 SignalR Core 中的全局设置配置

    我在用SignalR 核心 with ASP NET核心 我想覆盖环球主机signalR 的设置 我正进入 状态this protected void Application Start object sender EventArgs e
  • Excel VBA:获取包含选定范围内数据的最后一个单元格

    如何使用 Excel VBA 获取包含特定范围 例如 A 列和 B 列 内的数据的最后一个单元格Range A B using Find像下面这样很有用 因为它 可以立即找到二维范围中的最后一个 或第一个 单元格 测试Nothing识别空白
  • 函数返回未定义的、预期的 Promise 或值

    当我在 firebase 上触发简单数据库触发器时 然后它会显示这样的错误 函数返回未定义的预期 Promise 或值 const firebase require firebase admin const functions requir
  • mldivide 是否始终与 MATLAB 中的 OLS 相同?

    我正在对一些替代线性回归技术进行比较 显然 这些将相对于 OLS 普通最小二乘法 进行基准测试 但我只想要一个纯粹的 OLS 方法 不需要对数据进行预处理来发现数据中的不良条件 就像您在使用时发现的那样regress 我本来希望简单地使用经
  • PHP 点击事件处理程序

    我是 PHP 编程新手 我想知道是否可以像在 ASP NET 中那样处理 PHP 事件 我的意思是我有一个 img 我想在该 img 的单击事件上执行一些任务 我知道如何在 ASP NET 中执行此操作 但请在 PHP 上下文中帮助我 谢谢
  • 集合已修改;枚举操作可能无法执行

    我的 TabControl 中有多个 TabItem tabItem1 tabItem2 tabItem3 这些是 CloseableTabItem 如果我在 tabItem1 中添加一个节点并按下按钮为该节点创建子图模型 则 相同的节点应
  • 将二维数组拆分为单个数组

    我对 JQuery 有点陌生 我有一个 2D 数组 2DArray 2 0 6 31 3 0 6 09 4 0 7 44 我想将它分成 2 个一维数组 如下所示 2 0 3 0 4 0 6 31 6 09 7 44 我读过有关将单数组转换为
  • 使用 Cheerio 的 br 标签后的目标文本

    我正在练习通过使用 Cheerio 进行抓取来创建 API 我正在从这个相当复杂的网站上抓取 http www vegasinsider com nfl odds las vegas 我试图在这些之后定位文本 br 锚标签内的标签 td 元