web-scraping-automation
ウェブサイトのデータやAPIから情報を自動的に収集し、必要なデータの抽出、解析、スクリプト作成などを効率的に行い、業務を効率化するSkill。
📜 元の英語説明(参考)
自动化爬取网站数据和 API 接口。当用户需要抓取网页内容、调用 API、解析数据或创建爬虫脚本时使用此技能。
🇯🇵 日本人クリエイター向け解説
ウェブサイトのデータやAPIから情報を自動的に収集し、必要なデータの抽出、解析、スクリプト作成などを効率的に行い、業務を効率化するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o web-scraping-automation.zip https://jpskill.com/download/8269.zip && unzip -o web-scraping-automation.zip && rm web-scraping-automation.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/8269.zip -OutFile "$d\web-scraping-automation.zip"; Expand-Archive "$d\web-scraping-automation.zip" -DestinationPath $d -Force; ri "$d\web-scraping-automation.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
web-scraping-automation.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
web-scraping-automationフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
ウェブスクレイピングと API 自動化
機能説明
このスキルは、ウェブサイトのデータスクレイピングと API インターフェースの呼び出しを自動化するために特化しており、以下を含みます。
- ウェブサイトの構造の分析とスクレイピング
- REST/GraphQL API の呼び出しとテスト
- 自動化されたクローリングスクリプトの作成
- データ解析とクレンジング
- アンチクローリングメカニズムの処理
- 定期的なタスクとデータストレージ
使用シーン
- 「このウェブサイトの製品情報をスクレイピングする」
- 「この API を呼び出して、返されたデータを解析するのを手伝って」
- 「ニュースを定期的に取得するスクリプトを作成する」
- 「このウェブサイトの API インターフェースドキュメントを分析する」
- 「このウェブサイトのアンチクローリング制限を回避する」
技術スタック
Python クローリング
- requests: HTTP リクエストライブラリ
- BeautifulSoup4: HTML 解析
- Scrapy: プロフェッショナルなクローリングフレームワーク
- Selenium: ブラウザ自動化
- Playwright: 最新のブラウザ自動化
JavaScript クローリング
- axios: HTTP クライアント
- cheerio: サーバーサイド jQuery
- puppeteer: Chrome 自動化
- node-fetch: Fetch API
ワークフロー
-
目標分析:
- ウェブサイトの構造とデータの場所を確認する
- API インターフェースと認証方法を分析する
- アンチクローリングメカニズムを評価する
-
ソリューション設計:
- 適切な技術スタックを選択する
- データ抽出戦略を設計する
- エラー処理と再試行メカニズムを計画する
-
スクリプト開発:
- クローリングコードを記述する
- データ解析ロジックを実装する
- ログと監視を追加する
-
テストと最適化:
- データの正確性を検証する
- パフォーマンスと安定性を最適化する
- 境界条件を処理する
ベストプラクティス
- robots.txt ルールを遵守する
- 適切なリクエスト間隔を設定する
- User-Agent とリクエストヘッダーを使用する
- エラー再試行メカニズムを実装する
- データの重複排除と検証
- プロキシプールを使用する(必要な場合)
- 元のデータとログを保存する
共通シーンの例
1. 簡単なウェブページスクレイピング
import requests
from bs4 import BeautifulSoup
def scrape_website(url):
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
# データの抽出
data = []
for item in soup.select('.product'):
data.append({
'title': item.select_one('.title').text,
'price': item.select_one('.price').text
})
return data
2. API 呼び出し
import requests
def call_api(endpoint, params=None):
headers = {
'Authorization': 'Bearer YOUR_TOKEN',
'Content-Type': 'application/json'
}
response = requests.get(endpoint, headers=headers, params=params)
return response.json()
3. 動的なウェブページのスクレイピング
from selenium import webdriver
from selenium.webdriver.common.by import By
def scrape_dynamic_page(url):
driver = webdriver.Chrome()
driver.get(url)
# ページのロードを待機
driver.implicitly_wait(10)
# データの抽出
elements = driver.find_elements(By.CLASS_NAME, 'item')
data = [elem.text for elem in elements]
driver.quit()
return data
アンチクローリング対策
- リクエストヘッダーの偽装: 本物のブラウザをシミュレートする
- プロキシのローテーション: プロキシプールを使用する
- 検証コードの処理: OCR またはサードパーティサービス
- Cookie 管理: セッション状態を維持する
- リクエスト頻度の制御: 制限のトリガーを回避する
- JavaScript レンダリング: Selenium/Playwright を使用する
データストレージソリューション
- CSV/Excel: 簡単なデータエクスポート
- JSON: 構造化されたデータストレージ
- データベース: MySQL、PostgreSQL、MongoDB
- クラウドストレージ: S3、OSS
- データウェアハウス: 大規模なデータ分析に使用
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
网站爬取与 API 自动化
功能说明
此技能专门用于自动化网站数据爬取和 API 接口调用,包括:
- 分析和爬取网站结构
- 调用和测试 REST/GraphQL API
- 创建自动化爬虫脚本
- 数据解析和清洗
- 处理反爬虫机制
- 定时任务和数据存储
使用场景
- "爬取这个网站的产品信息"
- "帮我调用这个 API 并解析返回数据"
- "创建一个脚本定时抓取新闻"
- "分析这个网站的 API 接口文档"
- "绕过这个网站的反爬虫限制"
技术栈
Python 爬虫
- requests:HTTP 请求库
- BeautifulSoup4:HTML 解析
- Scrapy:专业爬虫框架
- Selenium:浏览器自动化
- Playwright:现代浏览器自动化
JavaScript 爬虫
- axios:HTTP 客户端
- cheerio:服务端 jQuery
- puppeteer:Chrome 自动化
- node-fetch:Fetch API
工作流程
-
目标分析:
- 检查网站结构和数据位置
- 分析 API 接口和认证方式
- 评估反爬虫机制
-
方案设计:
- 选择合适的技术栈
- 设计数据提取策略
- 规划错误处理和重试机制
-
脚本开发:
- 编写爬虫代码
- 实现数据解析逻辑
- 添加日志和监控
-
测试优化:
- 验证数据准确性
- 优化性能和稳定性
- 处理边界情况
最佳实践
- 遵守 robots.txt 规则
- 设置合理的请求间隔
- 使用 User-Agent 和请求头
- 实现错误重试机制
- 数据去重和验证
- 使用代理池(如需要)
- 保存原始数据和日志
常见场景示例
1. 简单网页爬取
import requests
from bs4 import BeautifulSoup
def scrape_website(url):
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
# 提取数据
data = []
for item in soup.select('.product'):
data.append({
'title': item.select_one('.title').text,
'price': item.select_one('.price').text
})
return data
2. API 调用
import requests
def call_api(endpoint, params=None):
headers = {
'Authorization': 'Bearer YOUR_TOKEN',
'Content-Type': 'application/json'
}
response = requests.get(endpoint, headers=headers, params=params)
return response.json()
3. 动态网页爬取
from selenium import webdriver
from selenium.webdriver.common.by import By
def scrape_dynamic_page(url):
driver = webdriver.Chrome()
driver.get(url)
# 等待页面加载
driver.implicitly_wait(10)
# 提取数据
elements = driver.find_elements(By.CLASS_NAME, 'item')
data = [elem.text for elem in elements]
driver.quit()
return data
反爬虫应对策略
- 请求头伪装:模拟真实浏览器
- 代理轮换:使用代理池
- 验证码处理:OCR 或第三方服务
- Cookie 管理:维护会话状态
- 请求频率控制:避免触发限制
- JavaScript 渲染:使用 Selenium/Playwright
数据存储方案
- CSV/Excel:简单数据导出
- JSON:结构化数据存储
- 数据库:MySQL、PostgreSQL、MongoDB
- 云存储:S3、OSS
- 数据仓库:用于大规模数据分析