티스토리 뷰
웹크롤링
0307 - 0308
웹크롤링 강의
URL
주소와 데이터 : '?'를 기준으로 앞부분은 주소, 뒷부분은 데이터를 나타낸다.
프로토콜 : 'http://'와 같이 사용되며, 웹에서 데이터를 주고받는 규칙을 의미한다.
경로 : 'main/'과 같이 리소스의 위치를 나타낸다.
HTTP 메소드
GET : URL에 쿼리를 포함하여 데이터를 요청한다. 쿼리가 노출되며 전송할 수 있는 데이터의 양이 제한적이다.
POST : 본문에 쿼리를 포함하여 데이터를 전송한다. 쿼리가 노출되지 않으며 더 많은 데이터를 전송할 수 있다.
HTTP 상태 코드
2xx (성공): 클라이언트의 요청이 성공적으로 처리된다.
3xx (리다이렉트): 요청된 리소스가 다른 위치로 이동했음을 나타낸다.
4xx (클라이언트 오류): 클라이언트의 잘못된 요청으로 인한 오류이다.
5xx (서버 오류): 서버 측에서 처리할 수 없는 오류이다.
쿠키, 세션, 캐시
쿠키(Cookie): 클라이언트의 브라우저에 저장되는 작은 데이터 조각. 로그인 정보, 상품 정보 등을 저장할 수 있다.
세션(Session): 클라이언트와 서버 간의 연결 정보를 서버에 저장합니다. 자동 로그인 등에 사용된다.
캐시(Cache): 데이터 입출력 속도를 빠르게 하기 위해 클라이언트나 서버의 RAM에 저장하는 데이터이다.
웹 언어 & 프레임워크
클라이언트(프론트엔드): HTML, CSS(Bootstrap), JavaScript(React.js, Vue.js)
서버(백엔드): Python(Django, Flask, FastAPI), Java(Spring), Ruby(Rails), JavaScript(Express[node.js])
스크래핑 & 크롤링
스크래핑(Scraping): 특정 데이터를 수집하는 작업이다.
크롤링(Crawling): 웹 서비스의 여러 페이지를 이동하며 데이터를 수집하는 작업이다.
처음 배워보는 분야여서 재미있으면서도 조금 어려워서 진행한 실습을 복습 겸 한번 더 진행해보았다!
신당역 근처 집 구하기!
직방 웹사이트 크롤링
addr = '중구 신당동'
url = f'...'
response = requests.get(url)
response
직방 사이트에서 개발자 모드를 켜고 search에서 url을 복사한다. 그리고 addr에 주소를 지정해주었다.
<Response [200]>
reponse 200이 나오면 정상적으로 동작하는 것을 확인할 수 있다.
url에 한글이 특수문자 형태로 깨져서 잘 알아볼 수 있도록 url encoder 사이트를 통해 url을 변환해주었다.
columns = ['item_id', 'sales_title', 'deposit', 'rent', 'title', 'address1', 'floor']
geohash값을 통해 매물의 아이디를 가져왔다. 그리고 크롤링한 데이터에서 위의 column들로 데이터 프레임을 만들었다. 월세 80만원 이하의 조건을 걸어두고 데이터 프레임을 확인했는데, 생각보다 신당역 주변에 방이없었다.
'KT에이블스쿨' 카테고리의 다른 글
[KT AIVLE] 딥러닝 (0) | 2024.04.23 |
---|---|
[KT AIVLE] 미니프로젝트 2차 (1) | 2024.04.23 |
[KT AIVLE] 머신러닝 기초 이론 (2) | 2024.03.30 |
[KT AIVLE] 1차 미니프로젝트 (0) | 2024.03.26 |
[KT AIVLE] 데이터처리, 데이터의 분석 및 의미 찾기 (0) | 2024.03.25 |