본문 바로가기
반응형

Selenium6

python 크롤링 part.6 많은 개발자도구를 보면 눈도 아프고 어렵긴 한데, 이것을 좀 쉽게 보고 표현할 수 있게 해주는 것이 있는데 css selector이다. 기존 방법에 비해 좀 어려울 순 있으나 알게 되면 더욱 쉽다. 한번 실습을 해보면 느낌이 올테니 해보도록 할것이다. 쇼핑몰에서 가격을 조회하는 프로그램을 만들어볼것이다. 그럼 쇼핑몰에서 저번 포스팅 처럼 맥북을 검색하는 것 까지는 기존 코드에서 그대로 가져와볼것이다. import time from selenium import webdriver from selenium.webdriver.common.keys import Keys opts = webdriver.ChromeOptions() opts.add_argument('user-data-dir=Chrome') driver.. 2022. 2. 23.
python 크롤링 part.5 이번 포스팅은 검색 결과나 카페 등에서 데이터를 가져올 경우 페이지를 이동하며 데이터를 수집해야할 경우가 있을수도 있다. 그럴 때 사용할수 있는 페이지네이션 처리 적용 방법을 다뤄볼것이다. 즉 , 페이지를 순회하며 데이터를 수집하는 실습을 해볼것이다. 저번 포스팅에 있던 중고나라 데이터 수집에서 iframe 페이지 까지 들어오는것은 완료가 되었다는 기준으로 이어서 설명을 하도록 할것이다. 먼저 첫번째는 페이지를 1,2,3,4,5...다음,11,12 넘기면서 데이터를 가져 와보고 다음은 무한 스크롤이 있는 페이지에서도 스크롤을 내리면서 데이터를 가져와 볼 것이다. 일단 공통 코드는 저번포스팅 까지 했었던 아래와 같다. import time from selenium import webdriver from s.. 2022. 2. 22.
python 크롤링 part.4 저번 포스팅에 이어서 이번엔 단순 네이버 뉴스 정보 가져오기나 검색이 아닌 특정 카페에서 내가 필요한 정보를 가져오는 작업을 해볼것이다. 예를들어, 중고나라에서 당신이 '맥북'에 대한 정보를 가져오고 싶을때 할수 있는 방법이다. 근데 여기서 의문점이 든다. 일반 검색이랑 똑같이 하고 진행하면 되는것 아닌지? 하고 말이다. 하지만 part.3에서는 단일 페이지 안에 있는 데이터를 가져왔다고 하면 이번엔 네이버 중고나라 카페 등에서는 iframe이라는 것을 사용하여 페이지 안에 또다른 페이지를 띄우는 형식인데, 그렇게 되어있을 경우 가져올수 있도록 해볼 것이다. 일단 저번시간 까지 했다면 중고나라 사이트에 들어가고 검색 칸에다가 '맥북' 이라고 검색해서 나오는 창까지는 만들수 있을 것이다. 코드는 다음과 같.. 2022. 2. 21.
python 크롤링 part.3 저번 포스팅 까지는 특정 주소를 url 을 적어서 들어갔다면 이번에는 네이버에서 특정 텍스트를 검색하고 그 결과에 나온 검색 결과에서 원하는 제목의 기사나 블로그, 지식인 등에서 가져오도록 할것이다. 기존 파일에 덮어써도 되지만 나는 추가로 python파일을 새로 하나 만들었다. 그리고 저번시간에 짰던 코드 부분에서 아래 부분들을 그대로 가져왔다. from selenium import webdriver driver = webdriver.Chrome('./chromedriver') driver.get('https://www.naver.com/') 그다음 url 주소 부분을 naver 주소로 바꾸었다. 이렇게 실행을 한다면 네이버 창이 뜨기만 한다. 여기서 똑같이 F12를 눌러서 검색하는곳에 마우스를 클릭해.. 2022. 2. 20.
python 크롤링 part.2 저번 포스팅에서는 페이지에서 글을 뭉텅이로 한번에 가져오는것을 연습하였고, 그 뭉텅이에서 각각 별개로 데이터를 가져오는것 까지 진행을 해볼것이다. 저번 포스팅을 잘 따라왔다면 현재 ul tag부분까지 가져왔을텐데 ultag를 좀더 자세하게 살펴보도록 할것이다. 확대를 해보면 각각 li로 묶인것들이 5개가 들어가있고 때마침 글을 보니 5개가 있다. 저 li에 마우스를 각각 가져다 대면 하나의 기사를 가리키고 있다. 그렇다 이 하나하나의 제목값이나 내용들을 반복문을 통해서 가져오면 된다. 저번에 가져온 ultag에서 li태그들을 먼저 가져온다. litags = ultag.find_elements_by_tag_name('li') litag들을 가져올것이라서 복수형으로 s를 붙여서 변수명을 만들었고, 저번 ul.. 2022. 2. 19.
python 크롤링 part.1 이번 포스팅에서는 python 언어를 활용하여 특정 페이지의 내용들을 모아오는 크롤링이라는것을 해볼것이다. 잘 활용을 하게 된다면 자신이 필요한 정보만 잘 획득해오도록 코딩을 짤수가 있을것이다. 환경 python3.7버전 vscode chrome 브라우저 selenium vscode설치 관련은 아래 참고 포스팅을 확인하도록 하자. 먼저 vscode에서 작업을 할 경로를 선택해서 폴더를 열고 아무 이름이나 해서 test.py 이런식으로 파이선파일을 하나 생성한다. 파이선이 처음이라면 자동으로 vscode에서 python관련 파일들을 설치하라고 나오는데 그냥 install 을 눌러주면 된다. 그리고 크롬브라우저를 코드상에서 열기 위해서 chromedriver를 자신의 os 버전에 맞게 설치를 하고 좀전에 만.. 2022. 2. 18.
반응형