본문 바로가기
반응형

[Python & Ruby]31

Python 크롤링 - BeautifulSoup로 네이버 검색어 크롤링 이전 글들처럼 Beautifulsoup와 request 라이브러리 두개를 사용한다. 없다면 pip install beautifulsoup4 pip install requests 콘솔창에 입력하여 설치해주어야 한다. 네이버에 아무 검색어나 입력한 뒤에 VIEW 탭으로 가본다. 이 때의 URL을 활용한다. 크롤링할 데이터는, 글 제목이랑 글 링크이다. 글 제목에 대한 링크를 가져와보면, class가 api_txt_lines total_tit _cross_trigger 이렇게 세 가지가 포함되어 있음을 확인할 수 있다. 코드 내에서 ctrl + F 또는 cmd + F를 통해, 이를 그대로 검색하여서, 블로그 제목들을 가리키고 있는지 검토해 볼 수도 있다. 아무튼 이 클래스 정보를 활용하여 진행하면 되겠다. b.. 2022. 12. 1.
파이썬 웹 크롤링 with BeautifulSoup & Requests 이전 글 까지는 셀레니움을 이용한 웹 크롤링을 진행했는데 알다시피 셀레니움은 브라우저 기반 동작이기 때문에 속도가 좀 느리다. 속도 방면에서 성능을 끌어올리기 위해서 BeautifulSoup 와 Requests를 이용한 웹 크롤링 방법이 있다. 대신 Selenium을 이용할 때 보다, 조금 더 HTML과 CSS 쪽의 지식이 필요하다. BeautifulSoup : 웹 페이지의 정보를 쉽게 스크래핑 할 수 있는 라이브러리 Requests : HTTP 요청을 보낼 수 있는 기능을 제공하는 라이브러리 저는 파이참을 이용하여 개발했습니다. 파이참 콘솔 창에 두 줄을 입력해서 라이브러리를 설치해줍니다. pip install beautifulsoup4 pip install requests 이전 시간에 Selenium.. 2022. 11. 28.
Python 크롤링 - 3 / 이마트 크롤링해보기 4 이전 글에서는, 이마트 상품 리스트 중 첫번째 페이지 내에서만 크롤링을 진행했습니다. 이번 글에서는 페이지를 넘나들며 크롤링을 하는 구현을 진행할 것이며, 추가로 try - except - finally 구문을 활용해서, 크롤링 과정에서 혹여나 발생할 예외사항들 (특정 상품에 태그가 없거나 누락되거나 기타 문제가 있는 경우)을 마주했을 때, 에러가 발생되어 뒤의 크롤링까지 모두 진행하지 못하고 종료되는 불상사를 막는 방법도 구현할 것입니다. 다음 페이지인 2페이지에 대한 태그를 획득하여 또다시 Copy XPATH를 진행합니다. 마찬가지로 10페이지에 대한 태그도 확인해보면, 여태 진행했던 대로 반복문을 어떻게 구성해야 하는지 감이 올 수 있습니다. 전반적인 방식은 이전까지 다뤘던 방법과 매우 동일하나, .. 2022. 11. 26.
파이썬 datetime 날짜 차이 / 날짜 덧셈 / 날짜 파싱 코테에서 자주 나오는 날짜 데이터 관련 문제를 파이썬을 이용하면 간단히 풀 수가 있다. from datetime import datetime from datetime import timedelta today = "2022:11:26:14:08:25" # 날짜 파싱 today_par = datetime.strptime(today, '%Y:%m:%d:%H:%M:%S') print(today_par.year) # 2022 print(today_par.month) # 11 ... # 날짜 차이 temp = "2022:11:24:10:08:21" temp_par = datetime.strptime(temp, '%Y:%m:%d:%H:%M:%S') print((today_par - temp_par).day) # 날짜.. 2022. 11. 26.
반응형