NewsCrawler — скилл
Скилл news-extractor достает из ссылки заголовок, текст, картинки и метаданные статьи с 12 новостных площадок и отдает JSON или Markdown без браузера
- 633 ★ репозитория
- Последний коммит
- GPL-3.0
Расширенный доступ
Почему такой уровень
- Скрипт сам ходит по адресам, которые вы укажете, и сохраняет страницы на диск
- Для защищенных твитов cookie передаются прямо в командной строке и остаются в истории оболочки
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/newscrawlerОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Скрипт сам ходит по адресам, которые вы укажете, и сохраняет страницы на диск
- Для защищенных твитов cookie передаются прямо в командной строке и остаются в истории оболочки
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
NewsCrawler упаковывает скилл `news-extractor`: агент получает ссылку на статью и локальным скриптом достает из нее заголовок, абзацы, картинки, видео и данные об авторе и времени публикации. Платформу скрипт определяет сам по адресу. Поддерживаются 12 площадок: WeChat, Toutiao, NetEase, Sohu, Tencent News, BBC, CNN, X (Twitter), Lenny's Newsletter, Naver Blog, Detik и Quora. Результат приходит в едином виде: JSON с полями `title`, `news_url`, `news_id`, `meta_info`, `contents`, `texts`, `images`, `videos` или Markdown с блоком «Информация о статье», телом и списком медиа. Агент не открывает браузер и не читает всю страницу в контекст, поэтому остается больше места для суммаризации и сравнения. Замер автора на одной статье Detik показал 1 730 токенов у JSON против 59 788 у отрендеренной страницы. Команда выглядит так: `uv run scripts/extract_news.py "URL"`, с опциями `--output`, `--format json|markdown` и `--list-platforms`. Для защищенных твитов есть параметр `--cookie`. В репозитории также лежат MCP-сервер, FastAPI, веб-интерфейс и Docker, но для скилла они не нужны.
Для кого. Для аналитиков, редакторов и исследователей, которые поручают агенту читать, пересказывать и сравнивать новости из китайских и международных источников.
Подходит, если
- Нужно пересказать статью из WeChat, Toutiao или NetEase, не вручную копируя текст из браузера
- Агент готовит обзор по десятку ссылок BBC, CNN и Naver, и для каждой нужен единый JSON с абзацами и картинками
- Страницу не хочется грузить в контекст целиком: агенту хватает заголовка, абзацев и списка картинок
- Нужен список поддерживаемых площадок по запросу `--list-platforms`, чтобы заранее проверить, подойдет ли ссылка
Не подходит, если
- Ссылка ведет на сайт вне списка из 12 площадок: скрипт ответит, что платформа не распознана
- Нужен материал за входом: cookie придется передавать самому, и скилл описывает такой путь только для защищенных твитов
- Требуется постоянный сервис с очередью и API: для него в репозитории есть MCP-сервер и FastAPI, но их придется разворачивать отдельно
- Нужен другой формат вывода: скрипт отдает только JSON и Markdown
Пример запроса к агенту
Достань текст и картинки из этой статьи на BBC и NetEase, сохрани как Markdown в ./news и сделай краткое сравнение двух сюжетовОграничения
Поддерживаются только перечисленные 12 площадок. Структура сайтов, правила входа и защита от ботов меняются, поэтому при сбое автор советует сначала проверить форму ссылки, доступ к сети и cookie, а затем адаптер платформы. Скрипт ходит в сеть сам и использует `curl_cffi`, который имитирует браузер при запросах. Доступность самих площадок из России разная, проверяйте нужные источники заранее.
Для работы нужны Python, менеджер `uv` и разовая установка зависимостей командой `uv sync` в каталоге скилла; все скрипты запускают через `uv run`, а не через `python` напрямую. Зависимости: pydantic, requests, curl_cffi, tenacity, parsel и demjson3. Для защищенных твитов в командную строку передают cookie вида `auth_token` и `ct0`, это секреты. Код распространяется под лицензией GPL-3.0. Автор приводит замер токенов только для одной статьи и оговаривает, что результат для других сайтов будет иным.
Как отключить. Удалите папку `news-extractor` из каталога скиллов агента, например из `~/.claude/skills/`. Виртуальное окружение, созданное `uv sync`, лежит внутри этой папки и удаляется вместе с ней. Сохраненные файлы JSON и Markdown остаются в каталоге `--output`, по умолчанию `./output`.
Частые вопросы
Как поставить news-extractor в Claude Code?
Командой `npx skills add NanmiCoder/NewsCrawler --skill news-extractor -g -a claude-code -y`. Затем в каталоге скилла один раз выполните `uv sync` и проверьте `uv run scripts/extract_news.py --list-platforms`.
Какие площадки поддерживаются?
Двенадцать: WeChat, Toutiao, NetEase, Sohu, Tencent News, BBC, CNN, X (Twitter), Lenny's Newsletter, Naver Blog, Detik и Quora. Платформа определяется по адресу ссылки, примеры форм адресов есть в SKILL.md.
Что возвращает скрипт?
По умолчанию два файла: `{news_id}.json` со структурой заголовка, метаданных, абзацев, картинок и видео и `{news_id}.md` с тем же в виде Markdown. Ключами `--format json` или `--format markdown` оставляют один формат.
Как достать защищенный твит?
Передайте cookie параметром `--cookie "auth_token=...; ct0=..."`. Публичные твиты работают без входа. Cookie не публикуйте и не коммитьте: проект просит не присылать их даже в тикетах.
Нужен ли MCP-сервер или Docker?
Нет. Автор прямо отмечает, что для скилла ни MCP, ни FastAPI, ни веб-интерфейс, ни Docker не требуются; они нужны для сценариев общего сервиса.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл читает ссылку и отдает агенту полный текст в Markdown: выбирает отдельный путь для страниц WeChat, документов Feishu, PDF и статей arXiv
CLI и скилл, через которые агент читает и ищет в Twitter, Reddit, YouTube, GitHub, Bilibili и Xiaohongshu без платных API
Скилл собирает обсуждения темы за 30 дней на восьми китайских площадках, ранжирует их и пишет отчет со ссылками, а еще показывает общие хит-парады
Скилл, который маршрутизирует вопрос к подходящей AI-платформе и через браузерную автоматизацию собирает ответ из ее родной поисковой выдачи
CLI для Twitter/X со скиллом для агентов: ленты, закладки, поиск и профили в терминале, плюс публикация, ответы и лайки без ключей API
Скилл веб-поиска, поиска по X и чтения страниц для моделей без выхода в сеть: без регистрации и ключа, ответ в JSON со ссылками на источники
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| NewsCrawler (эта запись) | нет | 633 | ||
| Firecrawl CLI | нет | 663 | общий скрапинг, поиск и обход любых сайтов через сервис Firecrawl, а этот скилл разбирает статьи 12 площадок локальным кодом | |
| Firecrawl MCP Server | да | API-ключ | 7 672 | MCP-сервер Firecrawl для скрапинга любых страниц, тогда как здесь заранее написаны адаптеры под новостные площадки |
Коротко о README
Описание на китайском представляет `news-extractor` как главный продукт репозитория. Оно показывает 12 платформ, сравнение с обычным путем через браузер, замер токенов на статье Detik от 20 июля 2026 года и способы установки через `npx skills`. Ниже объяснены структура репозитория, правила для вкладов и дополнительные режимы: MCP, FastAPI, веб-интерфейс и Docker.
Бейдж для README
Исходный SKILL.md
--- name: news-extractor description: 新闻站点内容提取。支持 12 个平台:微信公众号、今日头条、网易新闻、搜狐新闻、腾讯新闻、BBC News、CNN News、Twitter/X、Lenny's Newsletter、Naver Blog、Detik News、Quora。当用户需要提取新闻内容、抓取公众号文章、爬取新闻、或获取新闻JSON/Markdown时激活。 license: GPL-3.0 --- # News Extractor Skill 从主流新闻平台提取文章内容,输出 JSON 和 Markdown 格式。 **标准兼容、独立可迁移**:本目录遵循 Agent Skills 规范,包含完整的 `SKILL.md`、脚本与依赖,不依赖 NewsCrawler 的其他模块。通过兼容的 Skills 安装器安装后,运行一次 `uv sync` 即可使用。 运行环境需要 Python 3.9+、`uv` 和目标站点的网络访问。 ## 支持平台 (12) ### 中文平台 | 平台 | ID | URL 示例 | |------|-----|----------| | 微信公众号 | wechat | `https://mp.weixin.qq.com/s/xxxxx` | | 今日头条 | toutiao | `https://www.toutiao.com/article/123456/` | | 网易新闻 | netease | `https://www.163.com/news/article/ABC123.html` | | 搜狐新闻 | sohu | `https://www.sohu.com/a/123456_789` | | 腾讯新闻 | tencent | `https://news.qq.com/rain/a/20251016A07W8J00` | ### 国际平台 | 平台 | ID | URL 示例 | |------|-----|----------| | BBC News | bbc | `https://www.bbc.com/news/articles/c797qlx93j0o` | | CNN News | cnn | `https://edition.cnn.com/2025/10/27/uk/article-slug` | | Twitter/X | twitter | `https://x.com/user/status/123456789` | | Lenny's Newsletter | lenny | `https://www.lennysnewsletter.com/p/article-slug` | | Naver Blog | naver | `https://blog.naver.com/username/123456` | | Detik News | detik | `https://news.detik.com/internasional/d-123456/slug` | | Quora | quora | `https://www.quora.com/question/answers/123456` | ## 依赖安装 本 skill 使用 uv 管理依赖。首次使用前需要安装: ```bash cd <Agent Skills 目录>/news-extractor uv sync ``` **重要**: 所有脚本必须使用 `uv run` 执行,不要直接用 `python` 运行。 ### 依赖列表