【cheerio 使用案例】常用的用法,比如循环dom

cheerio 是一个类似于 jQuery 的库,它提供了一组简单而强大的 API 来解析和操作 HTML。以下是一些常用的 cheerio 用法示例,包括循环 DOM 元素:

  1. 加载 HTML:

    javascript 复制代码
    const cheerio = require('cheerio');
    const html = '<div><h1>Title</h1><p>Paragraph</p></div>';
    const $ = cheerio.load(html);
  2. 选择 DOM 元素:

    javascript 复制代码
    const title = $('h1').text(); // 获取 h1 元素的文本内容
    const paragraphs = $('p'); // 获取所有 p 元素
  3. 循环 DOM 元素:

    javascript 复制代码
    paragraphs.each((index, element) => {
      const text = $(element).text(); // 获取每个 p 元素的文本内容
      console.log(text);
    });
  4. 获取和设置属性:

    javascript 复制代码
    const link = $('a').attr('href'); // 获取链接的 href 属性值
    $('img').attr('src', 'new-image.jpg'); // 设置图片的 src 属性值
  5. 操作 DOM 结构:

    javascript 复制代码
    $('ul').append('<li>New item</li>'); // 在 ul 元素中添加新的 li 元素
    $('p').remove(); // 删除所有 p 元素
  6. 过滤 DOM 元素:

    javascript 复制代码
    const firstParagraph = $('p').first(); // 获取第一个 p 元素
    const lastParagraph = $('p').last(); // 获取最后一个 p 元素
    const hasClass = $('div').hasClass('container'); // 检查 div 元素是否有指定的类名

这只是 cheerio 的一些常用用法示例,您可以根据具体需求查阅 cheerio 的文档以了解更多功能和用法。

相关推荐
孟陬1 小时前
高质量全方位的 AI 工具 sse-stuntman — Mock SSE 接口
前端·node.js·openai
掰头战士1 小时前
你本地的LLM有时会胡乱使用tools?不妨用MCP规范LLM工具调用!
node.js·llm·全栈
触底反弹1 小时前
🧠 LangChain Agent 入门:为什么直接调大模型 API 远远不够?
人工智能·node.js·llm
书中枫叶2 小时前
从「上次几点喂奶」到全栈小程序:我做了个喂宝助手
mongodb·微信小程序·node.js
Asize4 小时前
Node path 与 fs 模块:从回调地狱到 async await 的异步进化
javascript·node.js
大家的林语冰6 小时前
😭 Electron 麻了,Deno 直接支持二进制应用,无需第三方桌面应用框架!
前端·javascript·node.js
Kel8 小时前
管道、IPC、Socket:你以为的三种技术,其实是同一件事
javascript·设计模式·node.js
Agent治理法学8 小时前
我开源了一套 AI Agent 框架:有性格、有规则、还会自己造工具
node.js·github
riuphan8 小时前
RAG 是什么?带你从0搭建本地向量数据库
node.js
江华森1 天前
前端构建工具 Webpack 速览
前端·webpack·node.js