C#

(C#) 웹 크롤링: 웹사이트 긁어오기

코딩ABC 2023. 4. 23. 07:10
반응형

웹사이트를 그대로 긁어오는 C# 코드입니다.

 

WebRequest 클래스

URI(Uniform Resource Identifier)에 대한 요청을 만듭니다. 인터넷에서 데이터에 액세스하기 위한 NET의 요청/응답 모델입니다.

 

WebResponse 클래스

URI(Uniform Resource Identifier)에서 응답을 제공합니다.

 

 

 

1. 프로젝트를 생성합니다.

Windows Forms 앱(.NET Framework)

 

2. 폼에 컨트롤을 배치합니다.

ToolStrip: TextBox 1개, Button 1개

RitchTextBox 1개

 

웹 크롤링: 웹사이트 긁어오기

코드 참고해서 속성을 변경합니다.

using System;
//using System.Collections.Generic;
//using System.ComponentModel;
//using System.Data;
//using System.Drawing;
using System.IO;
//using System.Linq;
using System.Net;
//using System.Text;
//using System.Threading.Tasks;
using System.Windows.Forms;

namespace Web_crawling
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            //string uri = "http://goog--.---";  // 사이트 주소
            //txtWebAddr.Text = "http://coding-abc.kr";

            WebRequest request;
            WebResponse response = null;
            Stream res = null;
            StreamReader sr = null;

            try
            {
                request = WebRequest.Create(txtWebAddr.Text);
                response = request.GetResponse();
                res = response.GetResponseStream();
                sr = new StreamReader(res);

                string s = sr.ReadToEnd();
                //Console.WriteLine(s);
                richTextBox1.Text = s;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                if (sr != null) sr.Close();
                if (response != null) response.Close();
            }

        }

        private void Form1_Load(object sender, EventArgs e)
        {
            txtWebAddr.Text = "http://coding-abc.kr";
        }
    }
}

 

 

반응형