scraping13 웹 크롤러 모델: 검색을 통한 사이트 크롤링 웹사이트 레이아웃이 유연하고 수정하기 편하다 해도 스크랩할 링크를 직접 찾아야 한다면 별로 도움이 되지 않습니다. 자동으로 링크를 수집하고 데이터도 검색할 수 있어야 합니다. 기본적으로 사용할 수 있는 웹 크롤러 구조는 세가지 정도가 있습니다.검색을 통한 웹 크롤링웹사이트에서 키워드나 주제를 검색하고 검색 결과 목록을 수집하는 프로세스가 사이트마다 크게 다르지 않고, 몇 가지 중요한 요점을 파악하면 별 차이가 없다는 것을 알 수 있습니다.대부분의 사이트에서 http://example.com?search=myTopic처럼 URL의 검색어를 삽입해 검색결과를 얻을 수 있습니다. 이 URL의 첫 번째 부분은 Website 객체의 속성으로 저장할 수 있으며, 그 뒤에 검색어를 연결하는 일은 아주 간단합니다.검색.. 2025. 2. 14. 웹 크롤링 모델: 객체 계획 및 정의와 다양한 웹사이트 레이아웃 다루기 웹 크롤러의 응용방향은 거의 끝이 없지만, 확장성이 뛰어난 크롤러는 일정한 패턴 중 하나에 속하는 경우가 많습니다.다양한 웹사이트에서 식당 리뷰, 뉴스 기사, 회사 프로필 같은 한정된 '타입'의 데이터를 수집하고, 이 데이터 타입을 파이썬 객체에 저장해서 데이터베이스에 읽고 쓰는 웹 크롤러에 대해 학습해보려고 합니다.객체 계획 및 정의각 제품에 다음과 같은 필드가 있다면제품 이름가격설명사이즈색깔옷감 종류고객 평가이 모든 정보를 추적할 필요는 없습니다. 정답은 무엇을 하고싶은 가를 살펴봐야 합니다. 만약 여러 매장의 제품 가격을 비교하고 시간에 따라 해당 제품 가격이 어떻게 변하는지 추적하고 싶다면품명제조사제품 ID와 같이 고유하게 식별할 수 있는 정보면 충분할 것입니다. 중요한 것은분석에 필요한 데이터 .. 2025. 2. 14. 크롤링 시작하기 웹 크롤링의 핵심은 재귀입니다. 웹 크롤러의 URL에서 페이지를 가져오고, 그 페이지를 검사해 다른 URL을 찾고, 다시 그 페이지를 가져오는 작업을 무한히 반복합니다. 웹 크롤러를 사용할 때는 반드시 대역폭에 세심한 주의를 기울여야 하며, 타깃 서버의 부하를 줄일 방법을 강구해야 합니다. 대역폭이란?통신 네트워크에서 데이터가 전송될 수 있는 최대 전송 용량을 의미합니다. 즉, 단위 시간당 전송할 수 있는 데이터의 양입니다. 이는 보통 단위(mbps,gbps)로 측정 됩니다. 1. 단일 페이지 이동만약 위키백과 페이지를 가져와서 페이지에 들어있는 링크 목록을 가져오는 파이썬 스크립트에서 해당페이지에 링크목록을 가져오는 것의 규칙을 발견한다면 "정규식"을 활용할 수 있습니다.공통점3가지링크 id가 body.. 2025. 2. 14. 복잡한 HTML페이지를 분석하여 원하는 정보만 추출하기 고급 HTML 분석을 사용하지 않는 방법bs.findAll('table')[4].find_all('tr')[2].find('td').find_all('div')[1].find('a') 이 방법의 문제점사이트 관리자가 사이트를 조금만 수정하더라도 웹 스크레이퍼에 동작이 멈출 수 있습니다.그렇기에 태그의 위치, 문맥, 속성, 콘텐츠에 따라 태그를 선택하는 표준적이 창의적인 방법이 필요합니다. 속성값을 통해 탐색오늘날 웹사이트 대부분은 class, id와 같이 고유한 속성을 가지고 있기에 요소를 찾기 수월합니다. BeaurifulSoup 객체의 findAll 함수를 사용하면 태그에 들어있는 텍스트만 선택해서 고유명사로 이루어진 파이썬 리스트를 추출할 수 있습니다.nameList = bs.findAll('spa.. 2025. 1. 28. 이전 1 2 다음