웹수집기라고 하기엔 좀 그렇지만..
가장 기본이 되는 모듈이지 싶다.
원하는 웹페이지에 접속해서 원하는 정보만 뽑는..
using System; using System.Net; using HtmlAgilityPack; class Program { static void Main(string[] args) { // 첫번째 인자값 URL string url = args[0]; using (WebClient wc = new WebClient()) { // 옵션, 만약 URL에 파라미터가 올바르게 전달되지 않는다면 아래와 같이 명시적으로 넣어준다. //wc.QueryString.Add("PARAMETER NAME", "PARAMETER VALUE"); try { // HTML 소스 내려 받음 string htmlSource = wc.DownloadString(url); if(htmlSource == string.Empty) { Console.WriteLine("정보 없음"); return; } /* * String 분석 보다는 Element 검색으로 빠르고 간편하게 원하는 데이터 검색 * TherdParty로 HtmlAgilityPack 설치 * 패키지 관리자 콘솔에서 : Install-Package HtmlAgilityPack 입력 */ HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(htmlSource); //찾고자 하는 노드명 HtmlNode findNode = doc.GetElementbyId("NODE NAME"); if(findNode != null) Console.WriteLine(findNode.InnerText); else Console.WriteLine("정보 없음"); } catch (WebException) { Console.WriteLine("URL이 잘못되었습니다.\r\nURL : {0}", url); } } } }
참조 사이트 : Html Agility Pack