java를 통해 크롤링 할 땐 일반적으로 jsoup이 사용된다. 이 포스팅에서는 jsoup의 select 메소드를 사용해서 parsing 하는 과정을 정규식을 사용한 방법으로 고쳐보았다. 크롤링 해오는 컨텐츠는 네이버 블로그이다. jsoup을 사용한 코드 특징 간결하고 간편하다. 실행시간: 3.077초 대략 3~5초 사이로 나타났다. long start = System.currentTimeMillis(); String str = ""; ArrayList list = new ArrayList(); for(int j = 0 ; j < 10 ; j++) {// 10 페이지까지 크롤링 String url = "https://search.naver.com/search.naver?date_from=&date_opt..
네이버, 구글에서 웹크롤링을 하려고하니 robots.txt.규약을 따라야 한다고 한다. 개인적인 용도로 한번 파싱하여 크롤링을 하는것은 문제가 없을 수도있으나 지속적으로 혹은 상업적인 용도로 사용한다면 그리고 로봇을 감지하여 사이트에서 ip차단등 조치를 취했음에도 우회하여 크롤링하는등의 행위는 위험하다고 하여 프로젝트를 도메인에 올리는 것까지는 생각을 해보아야 할 것 같다. 하지만 일정시간내에 얼마나 사이트를 요청해야 차단당하는지는 잘 모르겠다.. 아직 차단을 당해보지 않았다. 일단 작품을 완성하는 것이 중요하니 차단 당하는 경우 사이트 우회하는 방법을 찾아보았다.. 일단 내가 찾은 방법은 selenium 으로 직접 조작하는 것에 가까운 형태로 크롤링하기 selenium으로 크롤링 하는 것은 url로 사..
selenium을 메인화면부터 접근시키니 시간이 굉장히 오래걸렸다. 그래서 파라미터까지 url에 넣고 블로그 검색화면으로 바로 들어갈 수 있게 만들었다. 그렇게 하니 속도가 2배정도 빨라졌고 속도문제는 어느정도 해결이 될 것 같다. 그래도 서비스라고 하기엔 너무 느린속도이긴하다. 해야할 것 상단에 나타낼 정보 추가적으로 크롤링 multiprocessing 적용해서 속도가 더 향상될 수 있는지 확인 – “takes 0 positional arguments but 1 was given” 오류가 나서 파라미터에 query를 추가해서 해결 – 이상하게도 실행이 2번됨 그리고 빨라지지도 않음 방법을 다시 고민해봐야 할 것 같음
- Total
- Today
- Yesterday
- stackframe
- 이진탐색
- client side rendering
- 인접리스트
- 클래스
- 재귀함수
- 구조체
- C
- 배열
- 퀵정렬
- C++
- 동적프로그래밍
- BFS
- javascript
- 세마포어
- 운영체제
- 인접행렬
- 교착상태
- 소프트웨어
- Stack
- 입출력장치
- Java
- server side rendering
- 스텍
- react
- 병행프로세스
- 최단경로
- 자료구조
- 알고리즘
- dfs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |