Not in the top 1,000 by GitHub stars
shirenchuang/web-content-fetcher
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
670f8b36197f → 670f8b36197f
Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 670f8b36197f
No earlier version was observed for comparison.
Heat
2.4- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
How it works
web-content-fetcher
When your agent uses it
Extract article content from any URL as clean Markdown. Uses Scrapling script as primary method (with auto fast→stealth fallback), Jina Reader as alternative for simple pages. Preserves headings, links, images, lists, and code blocks. Use this skill whenever the user wants to fetch, read, extract, scrape, or summarize content from a URL — including blog posts, news articles, WeChat articles (微信公众号), documentation pages, or any web page. Also trigger when the user says things like "帮我读一下这篇文章", "抓取这个网页", "提取正文", or "read this page for me".
What it loads into context
Frontmatter
149 tokensAlways available to the agent
SKILL.md
960 tokensWhen the skill is activated
Reference documents
1,710 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Extraction Strategy
- Domain Routing
- Script Options
- Install Dependencies
- Failure Rules
Scripts executed separately
scripts/fetch.py
Files
.gitignoreasset14 bytesREADME.mddoc6,157 bytesSKILL.mdcore3,678 bytesSKILL.mdcore3,678 bytesSKILL.mdcore3,678 bytesSKILL.mdcore3,678 bytesqrcode_for_shizhen.jpgasset39,712 bytesrequirements.txtdoc20 bytesscripts/fetch.pyruns7,132 bytes
No excerpt is shown for this license. Read the source on GitHub.
View the complete source on GitHubSkills included
- web-content-fetcher
Repository facts
- License
- No license detected
- Created
- Mar 7, 2026
- Last pushed
- Mar 28, 2026
- Forks
- 72
- Open issues
- 2
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 3 notes
SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 38 network referencesin 3 files: README.md:7 SKILL.md:28 scripts/fetch.py:14
- No hidden or obfuscated text
- No instruction overrides
- 1 executable scriptin 1 file: scripts/fetch.py:1
- No access to secrets
- No requests to vote in Hot
Show all 39 signals by file
README.md
- Network accessline 7
[](https://www.python.org/) - Network accessline 8
[](LICENSE) - Network accessline 31
访问 [skills.sh](https://skills.sh/shirenchuang/web-content-fetcher/web-content-fetcher) 页面,按提示一键安装。 - Network accessline 36
npx skills add https://github.com/shirenchuang/web-content-fetcher --skill web-content-fetcher - Network accessline 42
# Clone git clone https://github.com/shirenchuang/web-content-fetcher.git - Network accessline 43
git clone https://github.com/shirenchuang/web-content-fetcher.git - Network accessline 66
帮我读取这篇文章:https://mp.weixin.qq.com/s/EwVItQH4JUsONqv_Fmi4wQ - Network accessline 67
Extract the content from https://openai.com/blog/gpt-4o - Network accessline 73
# 基础用法(自动选择 fast 或 stealth 模式) python3 scripts/fetch.py https://sspai.com/post/73145 - Network accessline 74
python3 scripts/fetch.py https://sspai.com/post/73145 - Network accessline 76
# 强制 stealth 模式(用于 JS 渲染页面) python3 scripts/fetch.py https://mp.weixin.qq.com/s/xxx --stealth - Network accessline 77
python3 scripts/fetch.py https://mp.weixin.qq.com/s/xxx --stealth - Network accessline 79
# 限制输出字符数(默认 30000) python3 scripts/fetch.py https://example.com/article 15000 - Network accessline 80
python3 scripts/fetch.py https://example.com/article 15000 - Network accessline 82
# JSON 输出(含 url, mode, selector, content_length) python3 scripts/fetch.py https://example.com --json - Network accessline 83
python3 scripts/fetch.py https://example.com --json - Network accessline 85
# 输出到文件 python3 scripts/fetch.py https://example.com/article > output.md - Network accessline 86
python3 scripts/fetch.py https://example.com/article > output.md - Network accessline 178
### [Kuaifa(快发)](https://github.com/shirenchuang/kuaifa) — 公众号一键排版发布
SKILL.md
- Network accessline 28
│ └─ 2. Jina Reader (fallback — only if Scrapling fails or dependencies not installed) web_fetch("https://r.jina.ai/<url>") - Network accessline 29
└─ 2. Jina Reader (fallback — only if Scrapling fails or dependencies not installed) web_fetch("https://r.jina.ai/<url>") Free tier: 200 req/day. Fast (~1-2s), good Markdown output. - Network accessline 30
web_fetch("https://r.jina.ai/<url>") - Network accessline 68
# Basic — auto-selects fast or stealth python3 <SKILL_DIR>/scripts/fetch.py "https://sspai.com/post/73145" - Network accessline 69
python3 <SKILL_DIR>/scripts/fetch.py "https://sspai.com/post/73145" - Network accessline 71
# Force stealth for known JS-heavy sites python3 <SKILL_DIR>/scripts/fetch.py "https://mp.weixin.qq.com/s/xxx" --stealth - Network accessline 72
python3 <SKILL_DIR>/scripts/fetch.py "https://mp.weixin.qq.com/s/xxx" --stealth - Network accessline 74
# Limit output to 15000 characters (default: 30000) python3 <SKILL_DIR>/scripts/fetch.py "https://example.com/article" 15000 - Network accessline 75
python3 <SKILL_DIR>/scripts/fetch.py "https://example.com/article" 15000 - Network accessline 77
# JSON output with metadata (url, mode, selector, content_length) python3 <SKILL_DIR>/scripts/fetch.py "https://example.com" --json - Network accessline 78
python3 <SKILL_DIR>/scripts/fetch.py "https://example.com" --json
scripts/fetch.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 14
Examples: python3 fetch.py https://sspai.com/post/73145 - Network accessline 15
python3 fetch.py https://sspai.com/post/73145 - Network accessline 16
python3 fetch.py https://mp.weixin.qq.com/s/xxx 30000 --stealth - Network accessline 17
python3 fetch.py https://zhuanlan.zhihu.com/p/12345 --stealth - Network accessline 156
page = StealthyFetcher().fetch( - Network accessline 165
def fetch(url, max_chars=30000, stealth=False): - Network accessline 211
try: md, selector, mode = fetch(url, max_chars, stealth=stealth) - Network accessline 212
md, selector, mode = fetch(url, max_chars, stealth=stealth)
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Signal confidence: 39 facts
- Network access in prose of documentationREADME.md:7Low confidence
- Network access in prose of documentationREADME.md:8Low confidence
- Network access in prose of documentationREADME.md:31Low confidence
- Network access in code of documentationREADME.md:36Low confidence
- Network access in code of documentationREADME.md:42Low confidence
- Network access in code of documentationREADME.md:43Low confidence
- Network access in code of documentationREADME.md:66Low confidence
- Network access in code of documentationREADME.md:67Low confidence
- Network access in code of documentationREADME.md:73Low confidence
- Network access in code of documentationREADME.md:74Low confidence
- Network access in code of documentationREADME.md:76Low confidence
- Network access in code of documentationREADME.md:77Low confidence
- Network access in code of documentationREADME.md:79Low confidence
- Network access in code of documentationREADME.md:80Low confidence
- Network access in code of documentationREADME.md:82Low confidence
- Network access in code of documentationREADME.md:83Low confidence
- Network access in code of documentationREADME.md:85Low confidence
- Network access in code of documentationREADME.md:86Low confidence
- Network access in prose of documentationREADME.md:178Low confidence
- Network access in code of the SKILL.mdSKILL.md:28High confidence
- Network access in code of the SKILL.mdSKILL.md:29High confidence
- Network access in code of the SKILL.mdSKILL.md:30High confidence
- Network access in code of the SKILL.mdSKILL.md:68High confidence
- Network access in code of the SKILL.mdSKILL.md:69High confidence
- Network access in code of the SKILL.mdSKILL.md:71High confidence
- Network access in code of the SKILL.mdSKILL.md:72High confidence
- Network access in code of the SKILL.mdSKILL.md:74High confidence
- Network access in code of the SKILL.mdSKILL.md:75High confidence
- Network access in code of the SKILL.mdSKILL.md:77High confidence
- Network access in code of the SKILL.mdSKILL.md:78High confidence
- Executable script in code of a file that runsscripts/fetch.py:1High confidence
- Network access in prose of a file that runsscripts/fetch.py:14Low confidence
- Network access in prose of a file that runsscripts/fetch.py:15Low confidence
- Network access in prose of a file that runsscripts/fetch.py:16Low confidence
- Network access in prose of a file that runsscripts/fetch.py:17Low confidence
- Network access in code of a file that runsscripts/fetch.py:156High confidence
- Network access in code of a file that runsscripts/fetch.py:165High confidence
- Network access in code of a file that runsscripts/fetch.py:211High confidence
- Network access in code of a file that runsscripts/fetch.py:212High confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.