C# 인스타그램 이미지 피드 가져오기
화면 구성을 간단히 하였습니다.
수치과인스타그램 A태그 및 이미지 피드를 가져올것입니다. 수치과 인스타그램 버튼을 누르면 할작업을 정리합니다.
찾아보니 C# 은 htmlagilitypack 주로 사용하는것 같았습니다.
하지만 자바에서 Jsoup를 사용해본 경험이 있어 기능도 부실하고 불편했습니다. Jsoup c#버전이 있더군요.
NSoup 라고 합니다. c#에도 Selenium이 있습니다. 이것들을 활용해서 데이터를 가져와 보겠습니다.
NuGet으로 오픈소스들을 받아 봅니다.
NSoup, Selenium.WebDriver, Selenium.WebDriver.ChromeDriver 등을 검색하여 설치합니다. 검색은 Nsoup,selenium으로 충분합니다.
마우스 클릭시 실행할 소스 내용입니다.
IWebDriver driver = new ChromeDriver(); //Navigate to google page
IJavaScriptExecutor js;
js = (IJavaScriptExecutor)driver;
String base_url = "https://www.instagram.com/soodental9/";
driver.Navigate().GoToUrl(base_url); //Close the browser
driver.Manage().Window.Size = new System.Drawing.Size(1614, 862);
js.ExecuteScript("window.scrollTo(0,0)");
NSoup.Nodes.Document doc = NSoupClient.Parse(driver.PageSource.ToString());
Console.WriteLine(doc.Title);
NSoup.Select.Elements linksOnPage = doc.Select(".v1Nh3.kIKUG._bz0w"); //클래스..
int i = 1;
foreach (NSoup.Nodes.Element page in linksOnPage)
{
Console.WriteLine("count : " + i++);
Element link = page.Select("a").First();
String linkHref = link.Attr("href");
//System.out.println("a href : " + base_url + linkHref);
Console.WriteLine("a href : " + base_url + linkHref);
Element img = page.Select("img").First();
//String imgtag = img.OuterHtml();
String imgtag = img.Attr("src");
Console.WriteLine("img : " + imgtag);
}
driver.Close();
데이터를 가져와서 콘솔창에 찍어보니 잘가져옵니다.
이제 db에 연결하여 데이터를 잘 넣으면 될것 같습니다.
'C#' 카테고리의 다른 글
C# String 문자열 자르기 Substring 사용법 (0) | 2020.03.05 |
---|---|
c# EXCEL 파일 읽기 (2) | 2020.02.25 |
"al.exe"을(를) 찾을 수 없습니다. SdkToolsPath가 설정되었는지, 도구가 SdkToolsPath 아래의 올바른 프로세서 특정 위치에 있는지, Microsoft Windows SDK가 설치되었는지 확인하세요. (0) | 2019.04.22 |
캔디 타워 맵툴 maptool 간단하게. (0) | 2014.10.11 |
c# Excel 로드 저장 파일열기 (0) | 2014.09.19 |