반응형
C#
Web Crawler
Selenium
1. Library 를 설치
Nuget 페키지 관리자를 열어서 아래 목록을 설치합니다.
-
Selenium.WebDriver
-
Selenium.Support
-
Selenium.WebDriver.ChromeDriver
-
DotNetSeleniumExtras.WaitHelpers
2. using
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
필요한것 만 using 하면됩니다.
3. Code sample
using (IWebDriver driver = new ChromeDriver())
{
driver.Url = "http://some.url.com";
// find 할때 찾을때까지 기다리는 seconds 설정
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(2);
// id="content" 라는 element에 있는 li tag 를 모두 가져옴
var elements = driver.FindElements(By.CssSelector("#content li"));
Console.WriteLine("li size = " + elements.Count);
foreach(var el in elements)
{
// 각각의 li 에서 원하는 데이터를 찾는다. span tag 중 class 명이 main_title 인 element
var title = el.FindElement(By.CssSelector("span.main_title")).Text.Trim();
Console.WriteLine(title);
}
}
WebBrowser visible 설정
ChromeDriverService service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;
IWebDriver driver = new ChromeDriver(service);
728x90
반응형
'C# 기술' 카테고리의 다른 글
[log4net] Visual Studio 2019 에서 log4net 사용하기 (0) | 2020.11.03 |
---|---|
[WinForm] Visual Studio 2019 에서 mdb 사용하기 #LocalDB (0) | 2020.11.03 |
[C#] DataTable Copy 데이터 테이블 복사하기 (2) | 2019.02.18 |
folder 권한 주며 생성하기 Directory security (0) | 2019.02.09 |
System.InvalidProgramException JIT Compiler encountered an internal limitation (0) | 2019.02.09 |
댓글