일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- aduino
- atmega328
- Pointer
- Barcode
- Android
- compare
- APP
- Encapusulation
- Binary
- digitalRead
- preprocessing
- stream
- sensor
- Read
- Unity
- file access
- parameter
- length
- UNO
- flutter
- Contour
- mfc
- public
- java
- inheritance
- memory
- Overloading
- wpf
- SERIAL
- Class
- Today
- Total
폴크(FOLC)
C# 테크닉 - 크롤링 본문
# 크롤링(Crawling) / 스크레이핑(Scraping) 은 웹에 노출된 데이터를 가져와서 특정한 규칙 또는 위치의 데이터를 추출한다.
# 전용 소프트웨어를 크롤러(crawler)라고 한다.
# 스파이더(spider), 봇(bot)과 같은 지능형 검색엔진들도 크롤링 기법을 많이 이용한다.
# 미리 입력된 방식에 따라 끊임없이 새로운 웹 페이지를 찾고 찾은 결과를 이용해 새로운 정보에 색인을 추가
1. Selenium 설치한다.
> Visual Studio 에서 메뉴 - 도구 - NuGet 패키지 관리자로 이동
> Selenium.WebDriver, Selenium.Support 설치
> Selenium.WebDriver.ChromeDriver, DotNetSeleniumExtras.WaitHelpers 설치
2. Chrome 웹브라우저 버전 확인
> Selenium.WebDriver.ChromeDriver 와 현재 설치된 Chrome 버전 통일
> Selenium.WebDriver.ChromeDriver 버전을 기입해도 됨.
3. C# 기본 프로젝트 생성
> WinForm 으로 새 프로젝트를 생성한다.
> Form1 에 using OpenQA.Selenium, using OpenQA.Selenium.Chrome, using OpenQA.Selenium.Support.UI 추가
> 프로젝트 compile 확인
4. 크롤링 데이터 선택
> Chrome 으로 데이터 수집을 위한 웹 페이지로 이동후 F12 클릭
> 원하는 데이터의 XPath 를 추출 ( Ctrl + Shift + C 이후 마우스로 위치 설정 Copy XPath )
private void buttonPageScroll_Click(object sender, EventArgs e)
{
ChromeDriverService _driverService = ChromeDriverService.CreateDefaultService();
_driverService.HideCommandPromptWindow = true;
ChromeOptions _options = _options = new ChromeOptions();
_options.AddArgument("disable-gpu");
_options.AddArgument("headless");
ChromeDriver _driver = new ChromeDriver(_driverService, _options);
_driver.Navigate().GoToUrl(textBox_url.Text);
IWebElement elem = driver.FindElementByXPath(textBox_XPath.Text);
elem.Text; // 크롤링 결과
}
'C#, WF, WPF(.NET) > C#, WF, WPF(.NET) 테크닉' 카테고리의 다른 글
C# 테크닉 - xls 파일에 Local Image 추가하기 (0) | 2021.10.11 |
---|---|
C# 테크닉 - Image 파일 다운로드 (0) | 2021.09.27 |
C# 테크닉 - xls 파일에 Image 추가 (0) | 2021.09.27 |
C# 테크닉 - TrayIcon (0) | 2021.09.07 |
WF 테크닉 - xls 파일 연동 (0) | 2021.08.03 |