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);
}
}
}
}