반응형
Python의 셀레니움을 통해서 네트워크 통신 패킷 로그 정보를 가져오는 코드 예제를
간략하게 정리해서 다루어보도록 하겠습니다.
네트워크 패킷이란?
참고로, 네트워크 통신 패킷 로그는 F12로 개발자 도구를 연 뒤,
Network 탭을 클릭하면 볼 수 있는 정보입니다.
셀레니움 코드 예시
원하는 사이트의 네트워크 통신 기록을 가져오는 예시 코드는 다음과 같습니다.
(이 코드를 실행하기 위하여 chromedriver 설치가 사전에 필요합니다.)
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import time
# 필요한 Chrome 옵션 설정
options = Options()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
options.set_capability('goog:loggingPrefs', {'performance': 'ALL'}) # 필수
# Chromedriver 서비스 설정(chromedriver 설치 필요)
service = Service(executable_path="./chromedriver.exe")
# Chrome WebDriver 시작
driver = webdriver.Chrome(service=service, options=options)
# 웹사이트 요청 및 로드
url = "원하는 웹사이트 url"
driver.get(url)
# 페이지가 로드되는 시간 동안 대기
time.sleep(5)
# Chrome의 performance 로그 가져오기
logs = driver.get_log("performance")
# 로그 출력 예시
for log in logs:
print(log["message"])
# 드라이버 종료
driver.quit()
'Python > Crawling' 카테고리의 다른 글
파이썬 셀레니움 함수 비동기(async)로 실행 방법 (2) | 2024.07.19 |
---|---|
셀레니움에서 텍스트 입력 시 줄 바꿈이 안될 때 해결 방법 (1) | 2023.10.13 |
셀레니움 h1, strong 등 HTML 태그 적용 텍스트 삽입 방법 예제 (0) | 2023.09.26 |