x-cmd pkg | trafilatura - 网络爬虫和搜索引擎优化工具

news/2024/7/19 12:37:43 标签: 爬虫, 搜索引擎, python, x-cmd, trafilature

目录

    • 简介
    • 首次用户
    • 技术特点
    • 竞品和相关作品
    • 进一步阅读

简介

trafilatura 是一个用于从网页上提取文本的命令行工具和 python 包:

  1. 提供网络爬虫、下载、抓取以及提取主要文本、元数据和评论等功能
  2. 可帮助网站导航和从站点地图和提要中提取链接
  3. 无需数据库,输出即可转换为各种常用格式(txt,csv,json,xml,xmltei)
  4. 可用于搜索引擎优化

首次用户

  1. 使用 x env use trafilatura 即可自动下载并使用

    • 在终端运行 eval "$(curl https://get.x-cmd.com)" 即可完成 x 命令安装, 详情参考 x-cmd 官网
  2. x-cmd 提供1分钟教程,其中包含了 trafilatura 命令常用功能的 demo 示例,可以帮你快速上手 trafilatura 。

  3. 使用案例

    trafilatura-1min-cn

    # 安装 trafilatura
    x env use trafilatura
    
    # 提取指定网页的主要内容
    trafilatura -u "https://www.x-cmd.com/start"
    
    # 使用站点地图抓取 x-cmd 关于 7za 的网站
    trafilatura --sitemap "https://www.x-cmd.com" --list | grep 7za > list.txt
    
    # 批量处理 URL 列表,并存储结果到目录中
    trafilatura -i list.txt -o txtfiles
    
    # 优化 bing 搜索结果
    trafilatura --links --xml -u "https://www.bing.com/search?q=gitea"
    

技术特点

  1. 稳健高效的提取:
    1. 除了可以提取主要文本之外,还可以提取元数据(标题、作者、日期、网站名称、类别和标签),结构化信息(段落、标题、列表、引号、代码、换行符、行内文本格式)
    2. 从原始 HTML 转换为关键部分,去除由重复出现的元素(页眉和页脚、广告、链接/博客等)组成的噪音
  2. 支持 URL 管理(黑名单、过滤和重复数据删除)
  3. 支持可选附加组件:
    1. 对提取内容进行语言检测
    2. 图形用户界面 (GUI)
    3. 速度优化
  4. 更加高效、准确。从官方给出的评估和替代方案的数据来看,该工具的性能明显优于其他开源解决方案。

竞品和相关作品

  1. goose3:用 Java 编写的文章提取器。
  2. readabilipy:Python 中的简单 HTML 内容提取器。
  3. news-please:是一个开源、易于使用的新闻爬虫,可以从几乎所有新闻网站中提取结构化信息。

进一步阅读

  • trafilatura 源代码 - trafilatura 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 trafilatura 和参与社区贡献。
  • trafilatura 官网 - 提供了非常丰富的使用案例和技术分析文档。
  • 使用 Trafilatura 进行文本抓取 - 该文章介绍了如何使用 trafilatura 快速提取网页问题。

X-CMD 官网


http://www.niftyadmin.cn/n/5302849.html

相关文章

[C#]C# OpenVINO部署yolov8实例分割模型

【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 YOLOv8 抛弃了前几代模型的 Anchor-Base。 YOLO 是一种基于图像全局信息进行预测的目标检测系统。自 2015 年 Joseph Redmon、Ali Farhadi 等人提出初代模型以来,领域内的研究者们…

python+playwright 学习-87 launch_persistent_context开启手机模式

launch_persistent_context 模式启动浏览器时,开启手机模式 selenium 设置手机模式 在selenium上设置手机模式代码 # coding:utf-8 from selenium import webdriver from selenium.webdriver.chrome.options import Optionsurl = "https://login.m.taobao.com/msg_log…

【小程序开发】解决 HBuilder X “[error] IDE service port disabled“无法运行问题

开发微信小程序时,在HBuilder X上方菜单点击”运行“->”运行到小程序模拟器“->”微信开发者工具“后,控制台输出了”[error] IDE service port disabled. To use CLI Call, please enter y to confirm enabling CLI capability, or manually ope…

FindMy技术用于鼠标

鼠标是计算机的标准配置之一,其设计初衷是为了使计算机的操作更加简便快捷,减少用户在操作中的负担。用户可以通过移动鼠标,实现光标的精确移动,进而选择、拖拽、复制、粘贴等操作。这种操作方式,使得计算机的操作变得…

NLP基础——中文分词

简介 分词是自然语言处理(NLP)中的一个基本任务,它涉及将连续的文本序列切分成多个有意义的单元,这些单元通常被称为“词”或“tokens”。在英语等使用空格作为自然分隔符的语言中,分词相对简单,因为大部分…

uniapp中组件库丰富的Switch 开关选择器使用方法

目录 #平台差异说明 #基础使用 #加载中 #禁用switch #自定义尺寸 #自定义颜色 #自定义样式 #异步控制 API #Switch Props #Switch Event 选择开关用于在打开和关闭状态之间进行切换。 #平台差异说明 App(vue)App(nvue&#xff0…

LeetCode——2487. 从链表中移除节点

通过万岁!!! 题目:给你一个链表,然后让你从链表中移除一些节点,移除的规则就是我们选择的这个节点在原链表中往右不能有比这个节点大的值。思路:这个题我最开始以为是双指针,然后找…

2023年TIOBE指数TOP50的编程语言写“Hello World!”

这篇文章列出了TIOBE指数TOP50的编程语言(TIOBE Index - TIOBE)如何写“Hello World!”。“Hello World!”代码应该是每个程序员学习一门编程语言最先实现的程序,给我们带来了很多美好的回忆,下面我们就一次…