inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

쉽게 처음하는 파이썬 고급 크롤링 [Scrapy, Selenium, Headless Chrome]

연습문제로 풀어보기1 : Headless Chrome 과 Selenium 크롤링

셀레니움 버전 변경으로 인한 코드 변경

해결된 질문

1285

리쿤

작성한 질문수 8

0

06:00부에서 오류가 생겨서 찾아보았음.

기존 강의에서는

elems = driver.find_elements_by_id('begin')이 정상적으로 작동되었으나 셀레니움 버전 4.3.0(최신버전)부터는 "find_element_by_* & find_elements_by"를 제거하였다. 따라서 아래와 같은 코드를 쓰면 정상 작동될 것이다.

 

elems = driver.find_elements("id", "begin")

 

전체코드

from selenium import webdriver

from selenium.webdriver.common.keys import Keys

import time

 

# 드라이버 생성

# chromedriver 설치된 경로를 정확히 기재해야 함

chromedriver = 'C:\dev_python\Webdriver/chromedriver.exe' # 윈도우 

#chromedriver = '/usr/local/Cellar/chromedriver/chromedriver' # 맥

driver = webdriver.Chrome(chromedriver)

 

# 크롤링할 사이트 호출

driver.get("https://davelee-fun.github.io/blog/crawl_html_css.html")

time.sleep(1)

# 여기에 작성해보세요

elems = driver.find_elements("id", "begin")

for index in elems:

    print(index.text)

driver.quit()

 

혹시나 헤매시는 분들을 위해 끄적여 봅니다.

 

웹-크롤링 bigdata scrapy selenium

답변 1

1

잔재미코딩 DaveLee

안녕하세요. 답변도우미입니다.

허걱, 본래는 해당 함수가 버전이 업데이트되면서, 새로운 함수를 제공하지만, 그렇다고 해서, 기존 함수가 동작을 안하는 경우는 극히 드물거든요. warning 메세지로 새로운 함수를 가이드하긴 하지만, 기존 함수를 동작안시키면, 관련 라이브러리를 쓴 모든 코드가 다 동작을 안하는 상황이 되기 때문에, 지원을 하는 것이 일반적입니다. 또 이런 경우가 파이썬 라이브러리에서 상당히 빈번하기도 하거든요. 그래서 아예 warning 메세지는 안보여주도록 하는 별도 명령도 있어서, 이 부분은 신경안쓰셔도 괜찮다고 전에 답변으로 설명을 드리기도 하였는데요.

오늘 갑자기 두 분께서 이야기를 하신 것을 보니, 아예 신규 버전에서는 해당 기존 함수를 못쓰게 바꾼 것 같습니다. 공지하고, 자료를 업데이트하도록 하겠습니다.

갑자기 코드가 동작을 안해서, 상당히 당황하셨을텐데, 이렇게 가이드까지 해주셔서 감사합니다.

감사합니다.

[REST API] data의 교환방식 질문

1

666

1

headless chrome 오류 문의

0

1488

1

Selenium 처리 속도 관련 문의드립니다.

0

1955

1

동적 웹사이트에서 element가 선택되지 않는 문제에 관해 질문드립니다

0

687

1

webdriver manager

0

440

1

__init__() got an unexpected keyword argument 'service' 에러 질문드립니다.

1

11713

1

Jupiter NoteBook 파일과 PDF 파일은 어디서 다운로드 받을 수 있나요?

0

444

1

scrapy option질문

1

244

1

response.css 질문드립니다.

0

372

1

scrapy 크롤링 수행시 ffi.callback() 에러가 발생합니다

0

397

1

selenium으로 여러페이지 수집시 질문

0

381

1

연습6 모범 코드: 로그인 시나리오 해보기

0

272

1

셀레니움 문법 업그레이드 , find_element_by_tag_name 오류

3

2832

1

headless error

0

441

1

질문있습니다!

0

463

1

안녕하세요 선생님! 질문있습니다.

0

233

1

selenium&scrapy문의

0

280

1

아래분(phantele47)과 동일한 문제가 발생해서 문의드립니다.

0

910

6

ip 차단을 피하려면 어떻게 해야 하나요?

0

3370

2

start_urls = ['']가 제공해주신 것과 다르게 작동합니다.

1

287

2

json, data = json.loads(response.body_as_unicode()) 부분에 문제가 있는 것 같습니다.

0

604

3

웹크롤링이 상대방 서버에 부담이 될 때는 어떻게 하나요~?

0

685

1

scrapy 윈도우버전의 설명은 따로 없나요??

0

332

1

json 으로 저장이 안되네요

0

2133

1