기본적으로 파이썬으로 크롤링을 할때는 자동으로 제어된다고 하는 크롬드라이버를 활용하여, 크롤링을 하게 되는데
get.(URL) 방식으로 접근할때, 새로운 창으로 제어가 시작된다.
그러면 로그인이 풀리는 문제가 발생할 수 있고, 인스타그램의 경우 로그인이 되지 않은 상태에서, 자동제어로 크롤링 할경우 크롤링이 되지 않는다..
그런경우 기존의 크롬창을 활용하여 새창이 뜨지 않게 제어하면, 편리하게 사용이 가능함
시작 - 실행 - cmd
64비트 설치경로
C:\Program Files\Google\Chrome\Application
32비트 설치경로
C:\Program Files (x86)\Google\Chrome\Application
chrome 이 설치된 경로로 접근하여 실행해야함!
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:/chrome_data"
위와같은 명령으로 실행할 경우 9222포트로만 동작하는 크롬창이 하나 뜸~
userdata는 본인이 지정한 폴더에 저장됨
이렇게 실행하면 아래와 같이 제어가 가능한 창이 열린다.
파이썬 코드에서 아래와 같이 크롬옵션을 만들어주면,
get.(URL) 에서 새창으로 열리지 않고 제어된 창에서만 작업이 가능하고,
로그인 상태에서도 그대로 연동되어, 로그인 된 계정에서도 제어가 가능하니 꿀 장점이 있다.
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
원래라면 셀레니움 동적으로 로그인 처리를 하는 과정에서 많은 문제점이 있지만,
위와같이 현재창에서 제어를 할 경우 그러한 문제점을 해소가 가능함