## ๐ **๋ ๋น ๋ฅด๊ณ ๊ฐ๋จํ ๋๊ท๋ชจ ์คํฌ๋ํ ๋ฐฉ๋ฒ(๋จ 5์ค์ ์ฝ๋)์ ์ฐพ๊ณ ๊ณ์ ๊ฐ์?** [**ScrapeGraphAI.com**](https://scrapegraphai.com/?utm_source=github&utm_medium=readme&utm_campaign=oss_cta&utm_content=top_banner)์ ํฅ์๋ ๋ฒ์ ์ ํ์ธํด๋ณด์ธ์! ๐
---
# ๐ท๏ธ ScrapeGraphAI: ํ ๋ฐฉ์ ๋๋ด๋ ์น์คํฌ๋ํ
[English](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/README.md) | [ไธญๆ](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/docs/chinese.md) | [ๆฅๆฌ่ช](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/docs/japanese.md)
| [ํ๊ตญ์ด](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/docs/korean.md)
| [ะ ัััะบะธะน](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/docs/russian.md) | [Tรผrkรงe](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/docs/turkish.md)
| [Deutsch](https://www.readme-i18n.com/ScrapeGraphAI/Scrapegraph-ai?lang=de)
| [Espaรฑol](https://www.readme-i18n.com/ScrapeGraphAI/Scrapegraph-ai?lang=es)
| [franรงais](https://www.readme-i18n.com/ScrapeGraphAI/Scrapegraph-ai?lang=fr)
| [Portuguรชs](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/docs/portuguese.md)
[](https://pepy.tech/projects/scrapegraphai)
[](https://github.com/pylint-dev/pylint)
[](https://github.com/VinciGit00/Scrapegraph-ai/actions/workflows/code-quality.yml)
[](https://github.com/VinciGit00/Scrapegraph-ai/actions/workflows/codeql.yml)
[](https://opensource.org/licenses/MIT)
[](https://discord.gg/gkxQDAjfeX)
[](https://scrapegraphai.com/?utm_source=github&utm_medium=readme&utm_campaign=api_banner&utm_content=api_banner_image)
[ScrapeGraphAI](https://scrapegraphai.com)๋ ์น ์ฌ์ดํธ์ ๋ก์ปฌ ๋ฌธ์(XML, HTML, JSON, Markdown ๋ฑ)์ ๋ํ ์คํฌ๋ํ ํ์ดํ๋ผ์ธ์ ๋ง๋ค๊ธฐ ์ํด LLM ๋ฐ ์ง์ ๊ทธ๋ํ ๋ก์ง์ ์ฌ์ฉํ๋ ํ์ด์ฌ ์น์คํฌ๋ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์
๋๋ค.
์ถ์ถํ๋ ค๋ ์ ๋ณด๋ฅผ ๋งํ๊ธฐ๋ง ํ๋ฉด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์์ ์ฒ๋ฆฌํด ์ค๋๋ค!
## ๐ ํตํฉ
ScrapeGraphAI๋ ์ธ๊ธฐ ์๋ ํ๋ ์์ํฌ ๋ฐ ๋๊ตฌ์์ ์ํํ ํตํฉ์ ์ ๊ณตํ์ฌ ์คํฌ๋ํ ๋ฅ๋ ฅ์ ํฅ์์ํต๋๋ค. ํ์ด์ฌ์ด๋ Node.js๋ก ๊ฐ๋ฐํ๋ , LLM ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ , ๋
ธ์ฝ๋ ํ๋ซํผ์ด๋ ์ ํฌ์ ํฌ๊ด์ ์ธ ํตํฉ ์ต์
์ ์ ๊ณตํฉ๋๋ค.
๋ ๋ง์ ์ ๋ณด๋ ๋ค์ [๋งํฌ](https://scrapegraphai.com)์์ ํ์ธํ ์ ์์ต๋๋ค
**ํตํฉ**:
- **API**: [๋ฌธ์](https://docs.scrapegraphai.com/introduction)
- **SDKs**: [Python](https://docs.scrapegraphai.com/sdks/python), [Node](https://docs.scrapegraphai.com/sdks/javascript)
- **LLM ํ๋ ์์ํฌ**: [Langchain](https://docs.scrapegraphai.com/integrations/langchain), [Llama Index](https://docs.scrapegraphai.com/integrations/llamaindex), [Crew.ai](https://docs.scrapegraphai.com/integrations/crewai), [Agno](https://docs.scrapegraphai.com/integrations/agno), [CamelAI](https://github.com/camel-ai/camel)
- **๋ก์ฐ์ฝ๋ ํ๋ ์์ํฌ**: [Pipedream](https://pipedream.com/apps/scrapegraphai), [Bubble](https://bubble.io/plugin/scrapegraphai-1745408893195x213542371433906180), [Zapier](https://zapier.com/apps/scrapegraphai/integrations), [n8n](http://localhost:5001/dashboard), [Dify](https://dify.ai), [Toolhouse](https://app.toolhouse.ai/mcp-servers/scrapegraph_smartscraper)
- **MCP ์๋ฒ**: [๋งํฌ](https://smithery.ai/server/@ScrapeGraphAI/scrapegraph-mcp)
## ๐ ๋น ๋ฅธ ์ค์น
Scrapegraph-ai์ ๋ํ ์ฐธ์กฐ ํ์ด์ง๋ PyPI์ ๊ณต์ ํ์ด์ง์์ ํ์ธํ ์ ์์ต๋๋ค: [pypi](https://pypi.org/project/scrapegraphai/).
```bash
pip install scrapegraphai
# ์ค์ (์น์ฌ์ดํธ ์ฝํ
์ธ ๊ฐ์ ธ์ค๊ธฐ์ฉ)
playwright install
```
**์ฐธ๊ณ **: ๋ค๋ฅธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ถฉ๋์ ํผํ๊ธฐ ์ํด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ์ ํ๊ฒฝ์ ์ค์นํ๋ ๊ฒ์ด ์ข์ต๋๋ค ๐ฑ
## ๐ป ์ฌ์ฉ๋ฒ
์น์ฌ์ดํธ(๋๋ ๋ก์ปฌ ํ์ผ)์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ธฐ ์ํด ์ฌ์ฉํ ์ ์๋ ์ฌ๋ฌ ํ์ค ์คํฌ๋ํ ํ์ดํ๋ผ์ธ์ด ์์ต๋๋ค.
๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๊ฒ์ `SmartScraperGraph`๋ก, ์ฌ์ฉ์ ํ๋กฌํํธ์ ์์ค URL์ด ์ฃผ์ด์ง ๋จ์ผ ํ์ด์ง์์ ์ ๋ณด๋ฅผ ์ถ์ถํฉ๋๋ค.
```python
from scrapegraphai.graphs import SmartScraperGraph
# ์คํฌ๋ํ ํ์ดํ๋ผ์ธ์ ๋ํ ๊ตฌ์ฑ ์ ์
graph_config = {
"llm": {
"model": "ollama/llama3.2",
"model_tokens": 8192,
"format": "json",
},
"verbose": True,
"headless": False,
}
# SmartScraperGraph ์ธ์คํด์ค ์์ฑ
smart_scraper_graph = SmartScraperGraph(
prompt="์นํ์ด์ง์์ ์ ์ฉํ ์ ๋ณด๋ฅผ ์ถ์ถํ์ธ์. ํ์ฌ๊ฐ ํ๋ ์ผ์ ๋ํ ์ค๋ช
, ์ฐฝ๋ฆฝ์ ๋ฐ ์์
๋ฏธ๋์ด ๋งํฌ๋ฅผ ํฌํจํ์ธ์",
source="https://scrapegraphai.com/",
config=graph_config
)
# ํ์ดํ๋ผ์ธ ์คํ
result = smart_scraper_graph.run()
import json
print(json.dumps(result, indent=4))
```
> [!NOTE]
> OpenAI๋ ๋ค๋ฅธ ๋ชจ๋ธ๋ค์ LLM ์ค์ ๋ง ๋ฐ๊พธ๋ฉด ๋ฉ๋๋ค!
> ```python
>graph_config = {
> "llm": {
> "api_key": "YOUR_OPENAI_API_KEY",
> "model": "openai/gpt-4o-mini",
> },
> "verbose": True,
> "headless": False,
>}
>```
์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ dictionary ํํ๊ฐ ๋ ๊ฒ์
๋๋ค:
```python
{
"description": "ScrapeGraphAI transforms websites into clean, organized data for AI agents and data analytics. It offers an AI-powered API for effortless and cost-effective data extraction.",
"founders": [
{
"name": "",
"role": "Founder & Technical Lead",
"linkedin": "https://www.linkedin.com/in/perinim/"
},
{
"name": "Marco Vinciguerra",
"role": "Founder & Software Engineer",
"linkedin": "https://www.linkedin.com/in/marco-vinciguerra-7ba365242/"
},
{
"name": "Lorenzo Padoan",
"role": "Founder & Product Engineer",
"linkedin": "https://www.linkedin.com/in/lorenzo-padoan-4521a2154/"
}
],
"social_media_links": {
"linkedin": "https://www.linkedin.com/company/101881123",
"twitter": "https://x.com/scrapegraphai",
"github": "https://github.com/ScrapeGraphAI/Scrapegraph-ai"
}
}
```
์ฌ๋ฌ ํ์ด์ง์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ฑฐ๋, Python ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๊ฑฐ๋, ์ฌ์ง์ด ์ค๋์ค ํ์ผ์ ์์ฑํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ๋ค๋ฅธ ํ์ดํ๋ผ์ธ๋ ์์ต๋๋ค.
| ํ์ดํ๋ผ์ธ ์ด๋ฆ | ์ค๋ช
|
|-------------------------|------------------------------------------------------------------------------------------------------------------|
| SmartScraperGraph | ์ฌ์ฉ์ ํ๋กฌํํธ์ ์
๋ ฅ ์์ค๋ง ์์ผ๋ฉด ๋๋ ๋จ์ผ ํ์ด์ง ์คํฌ๋ํผ์
๋๋ค. |
| SearchGraph | ๊ฒ์ ์์ง์ ์์ n๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๋ ๋ค์ค ํ์ด์ง ์คํฌ๋ํผ์
๋๋ค. |
| SpeechGraph | ์น์ฌ์ดํธ์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ณ ์ค๋์ค ํ์ผ์ ์์ฑํ๋ ๋จ์ผ ํ์ด์ง ์คํฌ๋ํผ์
๋๋ค. |
| ScriptCreatorGraph | ์น์ฌ์ดํธ์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ณ ํ์ด์ฌ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ ๋จ์ผ ํ์ด์ง ์คํฌ๋ํผ์
๋๋ค. |
| SmartScraperMultiGraph | ๋จ์ผ ํ๋กฌํํธ์ ์ถ์ฒ ๋ชฉ๋ก์ด ์ฃผ์ด์ง๋ฉด ์ฌ๋ฌ ํ์ด์ง์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๋ ๋ค์ค ํ์ด์ง ์คํฌ๋ํผ์
๋๋ค. |
| ScriptCreatorMultiGraph | ์ฌ๋ฌ ํ์ด์ง์ ์์ค์์ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ธฐ ์ํ ํ์ด์ฌ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ ๋ค์ค ํ์ด์ง ์คํฌ๋ํผ์
๋๋ค. |
๊ฐ ๊ทธ๋ํ์๋ ๋ค์ค ๋ฒ์ ์ด ์์ต๋๋ค. ์ด๋ฅผ ํตํด LLM์ ๋ณ๋ ฌ๋ก ํธ์ถํ ์ ์์ต๋๋ค.
OpenAI, Groq, Azure, Gemini์ ๊ฐ์ API๋ฅผ ํตํด ๋ค์ํ LLM์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, Ollama๋ฅผ ์ด์ฉํ ๋ก์ปฌ ๋ชจ๋ธ๋ ๊ฐ๋ฅํฉ๋๋ค.
๋ก์ปฌ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ค๋ฉด [Ollama](https://ollama.com/)๋ฅผ ์ค์นํ๊ณ ollama pull ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ์ ๋ค์ด๋ก๋ํด์ผ ํฉ๋๋ค.
## ๐ ๋ฌธ์
[](https://colab.research.google.com/drive/1sEZBonBMGP44CtO6GQTwAlL0BGJXjtfd?usp=sharing)
ScrapeGraphAI ๊ด๋ จ ๋ฌธ์๋ [์ฌ๊ธฐ](https://scrapegraph-ai.readthedocs.io/en/latest/)์์ ํ์ธํ์ค ์ ์์ต๋๋ค.
Docusaurus๋ [์ฌ๊ธฐ](https://docs-oss.scrapegraphai.com/)์์ ํ์ธํด ๋ณด์ธ์.
## ๐ค ๊ธฐ์ฌ
์์ ๋กญ๊ฒ ๊ธฐ์ฌํ๊ณ Discord ์๋ฒ์ ์ฐธ์ฌํ์ฌ ๊ฐ์ ์ฌํญ์ ๋
ผ์ํ๊ณ ์ ์ํด ์ฃผ์ธ์!
[๊ธฐ์ฌ ๊ฐ์ด๋๋ผ์ธ](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/CONTRIBUTING.md)์ ์ฐธ๊ณ ํ์ธ์.
[](https://discord.gg/uJN7TYcpNa)
[](https://www.linkedin.com/company/scrapegraphai/)
[](https://twitter.com/scrapegraphai)
## ๐ ScrapeGraph API & SDKs
์์คํ
์ ScrapeGraph๋ฅผ ํตํฉํ๊ธฐ ์ํ ๋น ๋ฅธ ์๋ฃจ์
์ ์ฐพ๊ณ ์๋ค๋ฉด, [์ฌ๊ธฐ!](https://dashboard.scrapegraphai.com/login)์์ ๊ฐ๋ ฅํ API๋ฅผ ํ์ธํด ๋ณด์ธ์.
[](https://dashboard.scrapegraphai.com/login)
Python๊ณผ Node.js SDK๋ฅผ ์ ๊ณตํ์ฌ ํ๋ก์ ํธ์ ์ฝ๊ฒ ํตํฉํ ์ ์์ต๋๋ค. ์๋์์ ํ์ธํด ๋ณด์ธ์.
| SDK | ์ธ์ด | GitHub ๋งํฌ |
|-----------|----------|-----------------------------------------------------------------------------|
| Python SDK | Python | [scrapegraph-py](https://github.com/ScrapeGraphAI/scrapegraph-sdk/tree/main/scrapegraph-py) |
| Node.js SDK | Node.js | [scrapegraph-js](https://github.com/ScrapeGraphAI/scrapegraph-sdk/tree/main/scrapegraph-js) |
๊ณต์ API ๋ฌธ์๋ [์ฌ๊ธฐ](https://docs.scrapegraphai.com/)์์ ํ์ธํ ์ ์์ต๋๋ค.
## ๐ฅ ๋ฒค์น๋งํฌ
Firecrawl ๋ฒค์น๋งํฌ [Firecrawl benchmark](https://github.com/firecrawl/scrape-evals/pull/3)์ ๋ฐ๋ฅด๋ฉด, ScrapeGraph๋ ์์ฅ์์ ์ต๊ณ ์ ํ์ฒ์
๋๋ค!

## ๐ ํ
๋ ๋ฉํธ๋ฆฌ
์ ํฌ๋ ํจํค์ง์ ํ์ง๊ณผ ์ฌ์ฉ์ ๊ฒฝํ์ ํฅ์์ํค๊ธฐ ์ํด ์ต๋ช
์ ์ฌ์ฉ ์งํ๋ฅผ ์์งํฉ๋๋ค. ์ด ๋ฐ์ดํฐ๋ ๊ฐ์ ์ฌํญ์ ์ฐ์ ์์๋ฅผ ์ ํ๊ณ ํธํ์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์ตํธ์์ํ๋ ค๋ฉด ํ๊ฒฝ ๋ณ์ SCRAPEGRAPHAI_TELEMETRY_ENABLED=false๋ฅผ ์ค์ ํ์ธ์. ์์ธํ ๋ด์ฉ์ [์ฌ๊ธฐ](https://scrapegraph-ai.readthedocs.io/en/latest/scrapers/telemetry.html)์์ ์ค๋ช
์๋ฅผ ์ฐธ์กฐํ์ธ์.
## โค๏ธ ๊ธฐ์ฌ์๋ค
[](https://github.com/VinciGit00/Scrapegraph-ai/graphs/contributors)
## ๐ ์ธ์ฉ
์ฐ๋ฆฌ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฐ๊ตฌ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉํ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด ์ธ์ฉํด ์ฃผ์ธ์:
```text
@misc{scrapegraph-ai,
author = {Lorenzo Padoan, Marco Vinciguerra},
title = {Scrapegraph-ai},
year = {2024},
url = {https://github.com/VinciGit00/Scrapegraph-ai},
note = {๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ์ ํ์ฉํ ์คํฌ๋ํ์ฉ Python ๋ผ์ด๋ธ๋ฌ๋ฆฌ}
}
```
## ์ ์๋ค
| | ์ฐ๋ฝ์ฒ |
|--------------------|---------------|
| Marco Vinciguerra | [](https://www.linkedin.com/in/marco-vinciguerra-7ba365242/) |
| Lorenzo Padoan | [](https://www.linkedin.com/in/lorenzo-padoan-4521a2154/) |
## ๐ ๋ผ์ด์ ์ค
ScrapeGraphAI๋ MIT License๋ก ๋ฐฐํฌ๋์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ [LICENSE](https://github.com/VinciGit00/Scrapegraph-ai/blob/main/LICENSE) ํ์ผ์ ์ฐธ์กฐํ์ธ์.
## ๊ฐ์ฌ์ ๋ง
- ํ๋ก์ ํธ์ ๊ธฐ์ฌํ ๋ชจ๋ ๋ถ๋ค๊ณผ ์คํ ์์ค ์ปค๋ฎค๋ํฐ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
- ScrapeGraphAI๋ ๋ฐ์ดํฐ ํ์ ๋ฐ ์ฐ๊ตฌ ๋ชฉ์ ์ผ๋ก๋ง ์ฌ์ฉ๋์ด์ผ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ค์ฉ์ ๋ํด ์ฑ
์์ ์ง์ง ์์ต๋๋ค.
Made with โค๏ธ by [ScrapeGraph AI](https://scrapegraphai.com)
[Scarf tracking](https://static.scarf.sh/a.png?x-pxid=102d4b8c-cd6a-4b9e-9a16-d6d141b9212d)