반응형

selenium 6

구글 코랩(Colab)에서 selenium 크롤링 세팅 방법

안녕하세요.google colab 환경에서 셀레니움 모듈로 크롤링을 할 수 있는 환경을세팅하는 방법에 대하여 간략하고 명료하게 정리해보도록 하겠습니다. 이 방법은 코랩과 유사한 리눅스 환경에도 적용이 가능하니 참고하세요.  1. Chrome 설치selenium을 활용하기 위해서는먼저, 코랩 환경 내에 크롬 브라우저를 설치해야 합니다. 다음 명령어를 코드에 입력하여 설치를 진행해주시면 됩니다.!wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | apt-key add - && \ sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/..

Python/Crawling 2024.12.06

파이썬 셀레니움 함수 비동기(async)로 실행 방법

Python의 Selenium을 이용하여 크롤링을 진행할 때,드라이버가 포함된 함수를 async로 실행해야 하는 경우가 있을 수 있습니다. 이 경우, 셀레니움의 함수를 비동기 함수처럼 사용이 가능하도록코드를 작성할 수 있는 방법이 있는데요.이번 글에서 해당 방법을 간략하게 정리해보도록 하겠습니다.  Sync 함수 예시먼저, 이해를 돕기 위하여 다음과 같이 간단한 driver를 호출하는 함수 get_driver과원하는 url에서 title 정보를 추출하는 get_title 함수가 있다고 가정해보도록 하겠습니다.from selenium import webdriverfrom selenium.webdriver.chrome.service import Servicefrom webdriver_manager.chrom..

Python/Crawling 2024.07.19

파이썬 Selenium으로 Network 패킷 크롤링 예제

Python의 셀레니움을 통해서 네트워크 통신 패킷 로그 정보를 가져오는 코드 예제를간략하게 정리해서 다루어보도록 하겠습니다.  네트워크 패킷이란?참고로, 네트워크 통신 패킷 로그는 F12로 개발자 도구를 연 뒤,Network 탭을 클릭하면 볼 수 있는 정보입니다.  셀레니움 코드 예시원하는 사이트의 네트워크 통신 기록을 가져오는 예시 코드는 다음과 같습니다.(이 코드를 실행하기 위하여 chromedriver 설치가 사전에 필요합니다.)from selenium import webdriverfrom selenium.webdriver.chrome.service import Servicefrom selenium.webdriver.chrome.options import Optionsimport time# 필요한..

Python/Crawling 2024.06.21

셀레니움에서 텍스트 입력 시 줄 바꿈이 안될 때 해결 방법

파이썬의 selenium을 활용하여 텍스트 입력란에 자동 입력을 진행하는 경우, 홈페이지의 구조에 따라서 개행 문자인 '\n'이 일반 공백처럼 인식되어 줄 바꿈이 안되는 경우가 발생할 수 있습니다. 이럴 때, 엔터 키를 입력하여 줄 바꿈을 진행하면 해결이 가능한 경우가 있는데요. 이번 글에서 예시 코드를 간략하게 정리하여 살펴보도록 하겠습니다. 텍스트 입력 줄 바꿈 기본 방법 예제 개행행 문자가 포함된 문자열을 셀레니움을 통하여 텍스트 입력창에 입력하려는 경우, 일반적으로는 다음 코드처럼 진행하게 됩니다. from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome() txt_box =..

Python/Crawling 2023.10.13

셀레니움 h1, strong 등 HTML 태그 적용 텍스트 삽입 방법 예제

파이썬의 selenium을 활용하여 텍스트를 입력하는 과정에서 h1이나 strong과 같은 HTML 태그가 적용된 텍스트로 입력을 원하는 경우가 있습니다. 이 글에서는 원하는 HTML 양식이 적용된 텍스트를 넣는 방법을 간략하게 정리해 보겠습니다. 참고: 셀레니움 기본 텍스트 입력 코드 예제 셀레니움에서는 일반적으로 find_element 등 메서드로 원하는 위치를 찾은 뒤에 send_keys 메서드를 활용하여 텍스트를 입력하게 됩니다. from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome() txt_box = driver.find_element(By.NAME, 'txt_box_..

Python/Crawling 2023.09.26

셀레니움 오류 raise NoSuchElementException: Message: no such element: Unable to locate element 원인 및 해결법

파이썬의 selenium 모듈로 버튼 클릭이나 텍스트 입력 등 과정을 수행하기 위하여 필요한 객체를 찾는 과정에서 NoSuchElementException 에러가 자주 발생할 수 있습니다. 이번 글에서는 해당 오류의 대표 케이스들을 정리해보고 원인 및 해결 방법을 케이스별로 정리해보도록 하겠습니다. 셀레니움에서 일반적으로 name이나 id 등 속성으로 element를 찾는 방법은 아래와 같습니다. from selenium.webdriver.common.by import By a = driver.find_element(By.NAME, 'name_00') # name 속성 기준 탐색 b = driver.find_element(By.ID, 'id_01') # id 속성 기준 탐색 위 형태의 코드를 실행하는 과..

Python/Debugging 2023.09.25
반응형