출처
- source_url: https://discuss.pytorch.kr/t/autoscraper/11409
- author: 9bow
- published: Tue, 28 Jul 2026 11:30:44 +0000
- raw: raw source:
2026-07-28-pytorchkr-topic-11409-autoscraper
개요
AutoScraper는 CSS 선택자나 XPath를 직접 작성하는 대신, 원하는 결과값의 예시를 제공해 웹 페이지의 스크래핑 규칙을 학습하는 Python 라이브러리입니다. URL 또는 HTML 콘텐츠와 wanted_list를 입력하면 예시와 유사한 요소를 찾아 결과를 반환합니다. 학습한 스크래퍼는 같은 구조의 다른 URL에 재사용할 수 있습니다. 텍스트, URL, HTML 태그 값 등을 대상으로 하며 Python 3과 호환됩니다.
핵심 포인트
wanted_list에 추출하려는 값의 예시를 넣으면 페이지 내 유사한 요소를 찾아 규칙을 학습합니다.get_result_similar는 예시와 비슷한 요소를 모두 반환하고,get_result_exact는 예시와 동일한 위치의 요소를 반환합니다.- 여러 값을
wanted_list에 넣으면get_result_exact가 지정한 순서대로 결과를 반환합니다. pip install autoscraper로 설치할 수 있으며,requests의 프록시·커스텀 헤더 설정을request_args로 전달할 수 있습니다.- 학습한 스크래퍼는
save()로 저장하고load()로 다시 불러올 수 있습니다. - 프로젝트는 MIT 라이선스로 공개되어 있어 개인 및 상업적 용도로 사용할 수 있습니다.
왜 중요한가
AutoScraper는 단순한 목록이나 반복적인 페이지 구조를 대상으로 CSS 선택자와 XPath를 직접 분석하고 작성하는 부담을 줄여줍니다. 한 페이지에서 학습한 규칙을 유사한 구조의 여러 페이지에 재사용할 수 있다는 점에서, 반복적인 데이터 수집 작업을 간소화하는 선택지가 될 수 있습니다. 다만 페이지 구조가 크게 달라지거나 동적으로 생성되는 데이터에 대한 지원 여부는 원문에서 별도로 설명하지 않으므로 사용 환경에서 확인이 필요합니다.
사용 예시
from autoscraper import AutoScraper
url = "https://stackoverflow.com/questions/2081586/web-scraping-with-python"
wanted_list = ["What are metaclasses in Python?"]
scraper = AutoScraper()
result = scraper.build(url, wanted_list)
print(result)
# 같은 구조의 다른 페이지에 재사용
scraper.get_result_similar(
"https://stackoverflow.com/questions/606191/convert-bytes-to-a-string"
)후속 링크 및 키워드
- 원문: https://discuss.pytorch.kr/t/autoscraper/11409
- GitHub: https://github.com/alirezamika/autoscraper
- 관련 키워드:
AutoScraper,wanted_list,get_result_similar,get_result_exact, Python 웹 스크래핑, CSS 선택자, XPath, MIT 라이선스 - 함께 보기:
관련 위키
원문 보존 위치
원문 전체는 raw source: 2026-07-28-pytorchkr-topic-11409-autoscraper에 source_url 및 HTML 원문과 함께 저장되어 있습니다.