-
카테고리
-
세부 분야
데이터 엔지니어링
-
해결 여부
미해결
for 문을 사용하지 않고 text list 로 뽑아내기
20.11.09 15:39 작성 조회수 147
0
강사님 안녕하세요.
Selenium을 활용해서 크롤링을 진행하고 있는데 속도가 굉장히 느려 고민이 많습니다.
구글링을 좀 해보니 image를 가져오는 부분을 disable 상태로 만들거나 multiprocessing 을 활용하라는 등의 방법이 나오는데요.
시간 순서대로 datepicker 를 조작하면서 진행하고 있어서 multiprocessing을 활용하기가 쉽지는 않았고 image를 가져오지 않아도 시간이 줄지 않았습니다.
그래서 elems = driver.find_elements_by_css_selecter() 를 활용해서 elems을 가져온 후
elems를 for문을 돌지 않고 text list로 뽑아내는 방법이 있다면 빠르게 진행할 수 있지 않을까 하는 생각을 했습니다.
혹시 관련된 방법을 알고 계신게 있는지 질문드립니다.
감사합니다 :)
답변을 작성해보세요.
0
잔재미코딩 DaveLee
지식공유자2020.11.10
안녕하세요.
selenium 은 속도가 PC 환경에 따라, 느릴 수 있습니다. 이 부분을 튜닝할 수는 있겠지만, 획기적으로 개선하기는 쉽지 않을 수 있고요. 말씀하신 부분의 코드로는 무슨 코드인지 알기도 쉽지 않기도 하고요.
이 부분을 획기적으로 개선한 것이 scrapy 이긴 해요. 물론 scrapy 로 동적 페이지를 크롤링하지는 않기는 하지만요(이 부분도 관련 추가 기능이 잇기는 한 것으로 알고 있습니다.) 이후 강의에서 나오는 scrapy 를 익혀보시면 좋을 것 같습니다.
감사합니다.
답변 1