Communitygithub.com

baronguyen001/ai-automation-skills

Supprime le HTML pour obtenir un texte brut propre avec uniquement la bibliothèque standard (sans BeautifulSoup/lxml) : supprime les scripts et styles, transforme les balises bloc en sauts de ligne et réduit les espaces inutiles. Utilisez cette compétence lorsque vous souhaitez obtenir un texte lisible à partir d'une page HTML ou d'un e-mail, nettoyer du HTML récupéré avant de l'envoyer à un LLM ou construire un index textuel à partir de contenu web.

Qu'est-ce que ai-automation-skills ?

Cette compétence permet de convertir du HTML en texte brut propre en utilisant uniquement la bibliothèque standard Python, sans dépendre de bibliothèques tierces comme BeautifulSoup ou lxml. Elle est idéale pour les développeurs et les agents IA qui doivent traiter du contenu HTML (pages web, newsletters, flux) avant de l'envoyer à un modèle de langage (LLM) ou de l'indexer. Sous le capot, une sous-classe de `HTMLParser` ignore les balises `<script>`, `<style>` et `<head>`, transforme les éléments de bloc en sauts de ligne, et réduit les espaces superflus, réduisant ainsi le nombre de tokens à traiter. Le résultat est un texte fluide et lisible, prêt à être résumé ou analysé. La compétence est compatible avec tout environnement Python standard, facile à tester unitairement, et inclut un fichier source `assets/htmltext.py` à copier dans votre projet.

Compatible avec~Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/baronguyen001/ai-automation-skills/tree/HEAD/skills/html-to-text

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

HTML vers Texte

Utilisez cette compétence lorsque vous avez du HTML – une page récupérée, un corps de newsletter, le contenu d'un flux – et que vous voulez un texte brut propre et lisible sans ajouter beautifulsoup4 ou lxml. Une petite sous-classe de HTMLParser supprime les blocs <script>/<style>, convertit les éléments de bloc en nouvelles lignes et réduit les espaces, ce qui est exactement ce qu'il vous faut avant d'envoyer du contenu à un LLM (moins de tokens) ou dans un index de recherche.

Quand l'utiliser

  • L'utilisateur dit : "extrais le texte de ce HTML", "nettoie cette page récupérée", "supprime les balises avant de résumer", "convertit ce HTML d'email en texte".
  • Du HTML va être fourni à un modèle ou à un résumé et le balisage n'est que du bruit.

Quand NE PAS l'utiliser

  • Vous devez conserver la structure (tableaux, liens en Markdown) – utilisez un véritable convertisseur HTML vers Markdown.
  • La page est rendue par JavaScript – récupérez-la d'abord avec un navigateur sans tête, puis convertissez.

Exemple concret

Entrée utilisateur :

Transforme le HTML de cet article en texte brut pour que je puisse le résumer avec moins de tokens.

Sortie :

# Copiez assets/htmltext.py dans votre projet, puis :
from htmltext import html_to_text

text = html_to_text(article_html)
summary = call_llm(f"Résume :\n{text}")

Les blocs <script> et <style> sont entièrement supprimés, les balises bloc deviennent des sauts de ligne, et les suites d'espaces/lignes vides sont réduites, de sorte que la sortie se lit comme de la prose.

Modèle à appliquer

  1. Sous-classez html.parser.HTMLParser avec convert_charrefs=True pour que les entités soient décodées automatiquement.
  2. Suivez une profondeur d'omission pour script/style/head afin que leur texte ne fuie jamais dans la sortie.
  3. Émettez des nouvelles lignes autour des balises bloc, puis réduisez les espaces intra-lignes et les suites de lignes vides.
  4. Restez pur (chaîne en entrée, chaîne en sortie) pour que le test unitaire soit trivial.

Référence : assets/htmltext.py.

Source

Distillé depuis les pipelines de récupération et de synthèse de l'auteur. v1.0.0. Voir aussi : [[rss-feed-reader]], [[gemini-cost-tracker]], [[pipeline-orchestrator]].

→ Construisez le bot exécutable complet avec Trawlkit.

Individual skills in this repo

This repo contains 9 individual skills — each has its own dedicated page.

baronguyen001/ai-automation-skills

Schedule any script to run on a recurring schedule on Windows (Task Scheduler) or Linux (cron) - register, list, and remove jobs from one command, with logging to a file and a guard against overlapping runs. Use for schedule a script, run nightly, set up a cron job, windows task scheduler, or run on a timer.

baronguyen001/ai-automation-skills

Turn a run's list of result dicts into a schema'd CSV and a Markdown table from one column spec - declare columns once, emit both, with stable ordering and safe escaping, stdlib only, no pandas. Use when the user asks to write results to CSV, export a report, make a markdown summary table, or save a run's output as a spreadsheet.

baronguyen001/ai-automation-skills

Persist records between scheduled runs as append-only JSON Lines (one object per line) with streaming reads and optional key-based dedup, stdlib only. Use when the user wants to log run results to JSONL, append events to a file, dedup records by id across runs, or keep a simple durable history without a database.

baronguyen001/ai-automation-skills

Extract text and simple table-like rows from a PDF for downstream AI without OCR binaries. Use when the user asks to read a PDF, turn a PDF into text, pull simple tables from statements/reports, or feed PDF content into an LLM pipeline.

baronguyen001/ai-automation-skills

Rotate a pool of HTTP/SOCKS proxies with round-robin selection, failure tracking, and a cooldown that benches dead proxies before retrying. BYO proxy list via env - none are shipped. Use for rotate proxies, spread requests across proxies, avoid IP bans, retry through a different proxy, or proxy health check.

baronguyen001/ai-automation-skills

Parse an RSS 2.0 or Atom feed into normalized item dicts (title, link, id, published, summary) with the standard library only - no feedparser. Use when the user asks to read an RSS/Atom feed, poll a blog/news feed, extract feed entries, or watch a site that publishes a feed.

baronguyen001/ai-automation-skills

Upload and download run artifacts from S3-compatible storage with BYO bucket and credentials from env. Use when the user asks to store scraper output, archive reports, publish artifacts to object storage, fetch a prior run file, or use MinIO/R2/Spaces/S3 without hardcoding credentials.

baronguyen001/ai-automation-skills

Draft a short-form TikTok/Reels/Shorts or long-form video script from a topic and creator persona file - hook variants, beat-structured body, CTA, b-roll cues, caption overlays, and [STORY]/[NUMBER] slots so the model never fabricates personal facts. Use for write a video script, tiktok script, youtube script, or /shortform-script.

baronguyen001/ai-automation-skills

Give scheduled scripts memory between runs with one SQLite file - a seen-set for dedup, a key/value cursor to resume where you left off, and order-preserving new-item filtering. Use for dedup across runs, don't re-alert the same item, remember the last id, resume a scraper, or persist state between cron runs.

Skills associés