필요한 페이지에만 JavaScript를 렌더링하는 Rust 기반 동시성 우선 웹 크롤링·스크래핑 엔진입니다.
howie6879/ruia
asyncio와 aiohttp 기반의 비동기 Python 웹 스크래핑 마이크로 프레임워크로, URL 크롤링을 최대한 간편하게 만드는 것을 목표로 합니다.
- 스타
- 1,739
- 포크
- 185
- 열린 이슈
- 9
- 마지막 커밋
- 8일 전
어떤 프로젝트인가요?
Ruia는 asyncio와 aiohttp를 기반으로 작성된 Python 3.6+용 웹 스크래핑 마이크로 프레임워크입니다. 스파이더를 선언형으로 정의할 수 있습니다. 추출할 데이터 항목과 파싱 규칙을 지정하면 프레임워크가 이벤트 루프에서 동시 요청을 처리합니다.
이 프레임워크는 확장성을 중심으로 설계되었습니다. 미들웨어를 사용하면 요청 및 응답 처리 파이프라인에 개입할 수 있고, 플러그인으로 동작을 확장할 수 있습니다. Linux와 macOS에서는 더 빠른 이벤트 루프를 위해 설치 과정에 uvloop를 포함할 수 있으며, 프로젝트는 JavaScript 지원도 기능으로 소개합니다.
README에서는 디버깅 중 응답을 캐싱해 대상 사이트에 대한 요청 부하를 줄이는 별도 프로젝트 ruia-cache와 스크립트를 대화형으로 디버깅하는 ruia-shell을 안내합니다. 분산 크롤링은 아직 구현되지 않은 기능으로 기재되어 있습니다.
핵심 기능
- 01선언형 스파이더 및 데이터 항목 정의
- 02동시 요청을 위한 asyncio 및 aiohttp 기반 구조
- 03확장을 위한 미들웨어 및 플러그인 시스템
- 04Linux와 macOS에서 선택적으로 uvloop 지원
- 05JavaScript 지원
활용 사례
- URL 목록에 있는 여러 페이지를 동시에 스크래핑
- Python으로 소규모 비동기 데이터 수집 스크립트 작성
- 커스텀 미들웨어나 플러그인으로 크롤러 확장
빠른 시작
- 1
Linux 또는 Mac에 설치(uvloop 사용)
pip install -U ruia[uvloop] - 2
Windows에 설치
pip install -U ruia - 3
튜토리얼을 읽고 첫 spider 작성하기
사용 전 알아둘 점
- Ruia는 아직 개발 중이므로 API가 변경될 수 있습니다.
- 분산 크롤링/스크래핑은 TODO로 등록되어 있으며 아직 사용할 수 없습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- ruia은(는) 무엇인가요?
- asyncio와 aiohttp 기반의 비동기 Python 웹 스크래핑 마이크로 프레임워크로, URL 크롤링을 최대한 간편하게 만드는 것을 목표로 합니다. Ruia는 asyncio와 aiohttp를 기반으로 작성된 Python 3.6+용 웹 스크래핑 마이크로 프레임워크입니다. 스파이더를 선언형으로 정의할 수 있습니다. 추출할 데이터 항목과 파싱 규칙을 지정하면 프레임워크가 이벤트 루프에서 동시 요청을 처리합니다.
- ruia은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- ruia은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- ruia은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. ruia의 마지막 커밋은 2026년 10월 30일입니다.
- ruia은(는) 어디에 사용할 수 있나요?
- URL 목록에 있는 여러 페이지를 동시에 스크래핑 Python으로 소규모 비동기 데이터 수집 스크립트 작성 커스텀 미들웨어나 플러그인으로 크롤러 확장
- ruia는 어떻게 설치하나요?
- Linux 또는 Mac에 설치(uvloop 사용): pip install -U ruia[uvloop] Windows에 설치: pip install -U ruia 튜토리얼을 읽고 첫 spider 작성하기
- ruia은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/howie6879/ruia
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
웹사이트에서 구조화된 데이터를 추출하는 스크래퍼와 크롤러를 만들기 위한 Go 프레임워크입니다.
HTTP 및 헤드리스 브라우저 모드, 프록시 로테이션, 영구 저장소를 지원하는 안정적인 웹 크롤러와 스크레이퍼 구축용 Python 라이브러리입니다.
ProjectDiscovery가 개발한 빠르고 설정 가능한 웹 크롤러·스파이더 프레임워크로, 엔드포인트 탐색을 위한 일반 모드와 헤드리스 브라우저 모드를 제공합니다.
단일 HTTP 요청부터 스텔스 브라우저, 파싱, 동시 크롤링과 내보내기까지 지원하는 Python 웹 스크래핑 프레임워크입니다.
Scrapy는 웹사이트에서 구조화된 데이터를 추출하는 Python 웹 스크래핑 및 크롤링 프레임워크입니다.