반응형
//Youtube Rss Atom형식의 XML을 파싱하는 소스
using(XmlTextReader rssReader = new XmlTextReader("Youtube URl"))
{
XmlDocument xmlDoc = new XmlDocument(); //XML 객체 생성
xmlDoc.Load(rssReader); //URL Load
//Select all nodes starting with "entry"
XmlNodeList xmlNodeList = xmlDoc.GetElementsByTagName("entry"); //XML에 entry태그의 데이터를 전부 가지고 와서 List로 만들어준다.
//각각의 노드로 만들어서 반복문을 돌린다.
foreach(XmlNode node in xmlNodeList)
{
XmlDocument innerXmlDocument = new XmlDocument(); //내부 객체를 파싱하기 위한 XmlDocument를 생성한다.
innerXmlDocument.LoadXml(node.OuterXml); //entry 노드의 데이터를 파싱한다.
//innerXmlDocument.GetElementsByTagName("media:title")[0].InnerText => XML 태그의 텍스트를 전부 가지고 온다.
//innerXmlDocument.GetElementsByTagName("media:thumbnail")[0].Attributes["url"].Value 태그 안에 있는 속성의 값만 가지고 온다.
string vYoutube_URL = innerXmlDocument.GetElementsByTagName("link")[0].Attributes["href"].Value;
string vThumbnail_URL innerXmlDocument.GetElementsByTagName("media:thumbnail")[0].Attributes["url"].Value;
string vTitle = innerXmlDocument.GetElementsByTagName("media:title")[0].InnerText;
string vDescription = innerXmlDocument.GetElementsByTagName("media:description")[0].InnerText;
}
}
'IT > C#' 카테고리의 다른 글
[C#]Oracle.ManagedDataAccess.Client Connection (0) | 2020.07.29 |
---|---|
[C#]URL 호출 후 Redirect한 URL 가져오기 (0) | 2020.03.25 |
[C#]Ionic을 이용한 압축 (한글 인코딩 O) (0) | 2020.03.12 |
[C#]폴더 생성 , 폴더 내 데이터 압축 (한글X) (0) | 2020.03.12 |
[C#] DataSet을 xlsx 확장자 파일로 만들기2 EPPlus 사용 (0) | 2020.02.13 |