insta browser class - 1: init
IT/크롤링 2025. 1. 10. 01:12
인스타 크롤링을 위한 브라우저 세팅을 위한 설정 클래스 기초 구성
""
title: selenium web driver custom class
author: ===
date: 250109
description
selenium webdriver custom class for instagram scraping
- init logic
-- selenium webdriver
-- user account data
- login logic
- parse logic
"""
from selenium import webdriver
class InstaBrowser:
def __init__(self, browser_driver):
self.url = 'https://www.instagram.com'
self.browser_driver = browser_driver
def init_browser_driver(self, options_args = []):
"""
init selenium web driver using options args list
"""
self.browser_driver_options = webdriver.ChromeOptions()
for opt in options_args:
self.browser_driver_options.add_argument(opt)
def oopen_insta_browser(self):
assert self.browser_driver_options is not None, "init_browser_driver first"
pass
# web driver options
# cache, broswer full screen, webdriver flags off
options = [
"user-data-dir=./user-data",
"--start-maximized",
"--disable-blink-features=AutomationControlled"
]
insta_browser = InstaBrowser(browser_driver=webdriver)
insta_browser.init_browser_driver(options)
insta_browser.oopen_insta_browser()
selenium에 이미 web driver라는 명칭을 사용하고 있어, 혼동을 줄이기 위해, browser를 사용했다.
init_browser_driver()
option을 사용하기 위해, selenium의 option을 그대로 사용할 수 있도록 하고, options 값들을 리스트화하여 메소드로 넘겨 초기화를 할 수 있게 했다.
open_insta_browser()
추후 작업을 할 생각이며, url의 주소로 창을 열고, 열기 전에 option을 설정했는지 그 여부를 확인하기 위해 assert를 사용했다.
IP 차단에 대한 대비책 (0) | 2025.01.06 |
---|---|
크롤링 시, 회피 대처 (0) | 2025.01.05 |
selenium과 beautifulSoup을 사용한 웹 페이지 수집 1 (0) | 2025.01.04 |
instagrapi 라이브러리를 사용한 인스타 크롤링 (0) | 2024.12.31 |
크롤링 시작 - 프로젝트 설정 - 파이썬 환경 설정 (0) | 2024.12.25 |