1. Server & Client
Client : 브라우저를 통해 서버에 데이터를 요청
Server : Client가 데이터를 요청하면 요청에 따라 데이터를 전송
2. URL(Uniform Resource Locator)
http://news.naver.com:80/main/read.nhn? mode=LSD&mid=shm&sid1=105&oid=001&aid=0009847211#da_727145
http:// : protocol(통신방식)
news : sub domain
.naver.com : domain
80 : port(서버 내 포트번호 web=80,443 db=3306을 많이씀)
/main/read.nhn : path(서버 컴퓨터 내 파일 위치)
? mode=LSD&mid=shm&sid1=105&oid=001&aid=0009847211 : query(페이지 내부 레이아웃? 네이버 기사페이지에서 31번째 기사를 뜻함)
#da_727145 : fragment(맨위로 버튼, 한페이내 다른 위치로 이동시키는버튼)
3. Get & Post
- Get
- url에 데이터가 포함 = 데이터가 노출
- 길이체한이 있음
- Post
- url이 아닌 html body에 데이터가 숨겨져있음
- 그래서 비밀번호 같은것을 post방식으로 씀
4. Cookie & Session & Cache
- Cookie
- client에 저장하는 문자열데이터로 도메인 마다 따로 저장됨
- 로그인정보, 내가봤던 상품 목록 팝업 다시보지않음 등
- 하나의 client에 30개 도메인당20개, cookie 하나당 4Kbyte
- Session
- server에 저장하는 객체데이터로 브라우저와 연결시 Session ID생성
- Session ID를 Cookie에 저장함으로써 로그인 연결 유지
- 같은 브라우저로 같은 서버에 접속하여 로그인정보를 연결
- Cache
- Client or Server 메모리에 저장하여 빠르게 데이터를 가져오는 저장소
5. HTTP Status Code
- 2xx : success
- 3xx : redirection(browser cache)(요청에 대한 성공을하려면 추가작업이 필요함)
- 4xx : request error
- 5xx : server error
6. Web Crawling 방법 3가지
- 정적인페이지 크롤링(웹페이지가 한번 뜨면 이벤트에의한 화면변경이 없는 페이지, json 이용, url이 바뀜)
- 동적인페이지크롤링(웹페이지가 한번 뜨면 이벤트에의한 화면이 변하는 페이지, html 이용, url이 안바뀜)
- selenium 이용
7. 크롤링 속도
json > html > selenium
'웹 크롤링 > Web Crawling' 카테고리의 다른 글
[Web Crawling] 3. 정적페이지,html (0) | 2023.02.27 |
---|---|
[Web Crawling] 2. Web API (0) | 2023.02.26 |
[Web Crawling] (0) | 2023.02.17 |