728x90
C#/Python Selenium install
10 Jul 2020ChromeDriver : https://chromedriver.chromium.org/downloads
크롬 디버깅 모드 실행
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:/Users/root/Desktop/ChromeDebug"
이렇게 실행하지 않으면 절때 셀레니움 창으로 디버깅할수없다.
C#
-
패키지로 설치하면 ChromeDriver.exe 가 자동적으로 생성된다.
-
Visual Studio에서 도구 > NuGet 패키지 관리자 > 패키지 관리자 콘솔(알트 T N O)
Install-Package Selenium.WebDriver.ChromeDriver Install-Package Selenium.WebDriver Install-Package Selenium.Support
- 기본적인코드
ChromeDriverService _driverService = null; ChromeOptions _options = null; ChromeDriver _driver = null; //_options.AddArgument("headless"); //_options.AddArgument("no-sandbox"); //_options.AddArgument("disable-gpu"); //_options.AddArgument("window-size=1920x1080"); //_options.AddArgument("disable-gpu"); _driverService = ChromeDriverService.CreateDefaultService(); _driver = new ChromeDriver(_driverService);
- 디버깅모드 컨트롤
ChromeDriverService _driverService = null; ChromeOptions _options = null; ChromeDriver _driver = null; _options = new ChromeOptions(); _options.DebuggerAddress = "127.0.0.1:9222"; _driver = new ChromeDriver(_options);
- 타입아웃설정 / 이동
_driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(10); _driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10); _driver.Navigate().GoToUrl("https://test.com");
- 자바스크립트 실행
String Javascript = String.Format( "document.getElementById('id').value = '{0}';document.getElementById('pw').value = '{1}';", username, userpassword); ExecuteScript(_driver, Javascript);
- 키입력
element.SendKeys(OpenQA.Selenium.Keys.Enter);
- 객체찾기 IWebElement 에서는 By.XPath 로 추가적으로 찾을수있다.
IWebElement close = _driver.FindElementByXPath( "//div[@class='modal-dialog']//button[@aria-label='닫기']" );
- 문자열로 element 를 찾는다면
//*[contains(text(), '확인')]
- 프레임접근
IWebElement iframe = _driver.FindElementByXPath("//iframe"); _driver.SwitchTo().Frame(iframe);
- 탭접근
_driver.SwitchTo().Window(_driver.WindowHandles.First()); _driver.SwitchTo().Window(_driver.WindowHandles.Last());
- 닫기
_driver.Close(); // 현재창만 닫음 _driver.Quit(); // 크롬전체를 닫음
Python
설치
pip install selenium
from selenium import webdriver
from selenium.webdriver.remote.webelement import WebElement
from selenium.common.exceptions import TimeoutException
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.action_chains import ActionChains
chrome_options = webdriver.ChromeOptions()
# chrome_options.add_argument("--headless")
# chrome_options.add_argument("--no-sandbox")
# chrome_options.add_argument("--disable-dev-shm-usage")
# chrome_options.add_argument("--disable-gpu")
# chrome_options.add_argument("--window-size=1920,1080")
# chrome_options.add_argument("--window-size=1920,1080")
#chrome_options.debugger_address = "127.0.0.1:9222"
driver = webdriver.Chrome(options=chrome_options)
driver.get("http://www.naver.com")
728x90
'자료' 카테고리의 다른 글
[C#] 크롬드라이버 자동 업데이트 (0) | 2020.08.10 |
---|---|
C # Selenium HttpWebRequest 세션 (Session) 공유 (0) | 2020.08.10 |
파이썬 셀레니움 크롬드라이버 자동설치 (0) | 2020.08.10 |
피들러(Fiddler) : 요청(Request) 분석창 살펴보기 (0) | 2020.08.10 |
피들러(Fiddler) : 응답(Response) 분석창 살펴보기 (0) | 2020.08.10 |