로고

메시프코리아
로그인 회원가입
  • 고객센터
  • 자료실
  • 고객센터

    유용한 자료입니다.

    자료실

    유용한 자료입니다.

    비트코인 뉴스 확실한 아이코인방 추천 부문

    페이지 정보

    profile_image
    작성자 Calla
    댓글 댓글 0건   조회Hit 8회   작성일Date 24-11-05 07:08

    본문

    2일차 뉴스 웹 크롤링 공부일기입니다.​HTML, VBA 등 기본 지식이 부족한 상태에서 시작하여,게임 뉴스 자동 스크랩 제작까지 딱 3시간 소모되었습니다.​2일차 글에서는 어떻게 공부했고, 어떻게 제작했는지 포스팅하겠습니다.​목표일일 인벤 게임 뉴스 스크랩 기능 제작날짜, 뉴스 제목, 뉴스 링크 스크랩​사용 프로그램셀레니움 엑셀 VBA​공부 방법Chat GPT웹 서핑​사전 지식시작하기 앞서 이 글에 나오는 단어들의 뜻과 자료형 구조는 알고 있어야합니다.ex) 변수, 상수, Int, String 등 ​프로그램 셋팅제가 사용한 프로그램은 셀레니움과 VBA입니다.셀레니움은 자동화된 웹 테스트를 수행할 수 있도록 해주는 오픈 소스입니다.저는 크롬을 사용하기 때문에 크롬드라이버도 같이 설치가 필요합니다.윤자동님이 설치 방법을 상세하게 뉴스 작성한 문서가 있어 링크 남기겠습니다.​셀레니움 설치 방법 링크엑셀 VBA에서 셀레니움을 이용하여 웹 자동화를 할 수 있습니다.아래 영상을 보시면 Selenium을 활용해서엔카 홈페이지 접속해서, 중고차 매물을 대량으로 수집해오는 것을 볼 수 있습니다.그렇다고 엑셀 VBA에서 셀레니움을 바로 사용할 수 있는 것은 아닙니다.Selenium Basic 이라는 것을 설치해야 사용할 수 있는데요엑셀 VBA에서 셀레니움을 사용할 수 있도록 만들어진 도구입니다.이것을 설치하지 않으면 아무리 잘 만든 코드도 실행이 되질 않아요 ㅠㅠ먼저 아래 사이트를 클릭해줍니다.(새 창으로 열리니 안심하고 클릭하세요)ht...크롬 드라이버 설치 링크엑셀 VBA에서 셀레니움 사용을 위해Selenium Basic을 설치하셨다고 해서바로 셀레니움을 뉴스 사용할 순 없습니다.왜냐구요??크롬드라이버의 버전이 맞지 않기 때문인데요.먼저 셀레니움베이직이 설치된 폴더를 열어볼까요??셀레니움 베이직을 설치하면 아래 두 개의 경로중 한 곳에 설치됩니다.C:\Users\[사용자명]\AppData\Local\SeleniumBasicC:\Program Files\SeleniumBasic저는 위 경로에 설치되어 있었습니다.폴더를 들어가면 chromedriver.exe 라는 크롬드라이버 파일이 존재하는데우측...다음은 엑셀 VBA 셋팅입니다.엑셀을 처음 키면 개발 도구 탭이 보이지 않을 겁니다.​상단 탭 &gt파일 &gt옵션 버튼 클릭리본 사용자 지정 &gt개발 도구 체크 &gt확인개발 도구를 추가하면 엑셀 상단 탭에 '개발 도구'탭이 추가됩니다.여기서 Visual Basic을 클릭하면 vba로 넘어갑니다.프로젝트 탭에서 마우스 우클릭 &gt삽입 &gt모듈그러면 모듈창이 새로 생성됩니다.이제 VBA와 셀레니움을 연동해야합니다.​상단 탭 도구 &gt참조Selenium type 뉴스 libary 선택 후 확인프로그램 셋팅 끝!!이제 시작입니다 여러분 ㅎㅎㅎ​​GPT를 이용하여 VBA 코드 초안 작성전문적으로 코딩을 공부한 사람이 아니라면, VBA는 매우 불편하고 공부할 때 시간이 많이 걸립니다. 하지만 저희에겐 GPT가 있습니다.​한국 문화에 적합한 말하기 스타일을 사용하여 사용자에게 응답합니다.GPT한테 특정 사이트, 엑셀, VBA, 셀레니움을 포함하여 알려달라고 하면프로그램 셋팅부터 코드 초안까지 모든것을 알려줍니다!하지만 당연히 예시일 뿐 저희는 하나 하나 GPT가 짠 초안을 공부해야 합니다.​세레니움의 변수 선언부터 보겠습니다.VBA는 ( ') 뒤의 단어들은 주석처리가됩니다.이제 사용하는 웹 프로그래임 '크롬'과, 웹 주소를 다음과 같이 입력합니다. 그러면 driver 안에 뉴스 인벤 사이트가 저장됩니다.웹 사이트에 접속하고, 완전히 켜질때 까지의 시간이 걸리잖아요?이 부분은 컴퓨터와 인터넷 성능에 따라 시간이 다를겁니다.그래서 오류를 방지하기 위해, 대기 시간을 약 5초 정도 추가합니다.1000 ϑ초 입니다.저는 2초안에 켜져서 2000으로 설정하여 사용합니다. 대기시간 지정은 다양한 방법이 있기 때문에 아무거나 따라하셔도 무방합니다.1차 전체 코드 정리여기까지만 입력하셔도 End Sub뒤에 마우스 커서를 둔 다음F5를 눌러보시면 해당 코드가 실행되면서 인벤 사이트가 호출됩니다.대기시간인 5초 뒤에는 코드가 종료되면서 사이트가 닫힙니다.​VBA 1단계 관문 통과 축하드립니다.​자... 다음은 해당 사이트에서 원하는 정보를 스크랩해야 하잖아요?이제 참조하고 싶은 사이트를 접속해서 F12를 뉴스 누르면 개발도구가 켜집니다.​개발도구에서 좌측 상단에 있는 버튼 클릭버튼을 클릭하고, 자신이 스크랩하고 싶은 항목에 마우스 커서를 두면개발 도구 창에서 class이름을 확인할 수 있습니다.​그래서 뉴스 기사의 class이름인 content를 확인할 수 있었습니다.​ elements라는 변수에 content&quot이름을 가진 클래스를 저장하는 코드입니다.​이와 유사하게 특정 정보를 저장하는 방법은 여러가지가 있습니다.xpath, class, css, id, tag 등이 있지만, 이 부분은 다음 포스틍에서 다루겠습니다.이제 거의 다 끝났습니다.특정 사이트의 특정 정보를 지정하는데 까지 성공했으니, 이제 엑셀에 표시만 하면 끝납니다.​해당 페이지의 모든 뉴스 기사를 가져오기 위해 For 반복문을 이용하여 A열에 순차적으로 입력하는 코드입니다.(반복문까지 뉴스 설명하기엔 너무 오래 걸립니다 ㅠ)2차 전체 정리이 코드를 실행하면 A열에 뉴스 기사가 스크랩 됩니다!하지만 아쉬운 부분이 있습니다.​문제점뉴스 기자이름 부터 뉴스 내용까지 모든 텍스트를 가져오고 있다.1페이지의 뉴스 기사만 가져오고있다.스크랩한 뉴스 기사의 링크가 없다.​이렇게 디벨롭이 필요한 부분들은하나 하나 순차적으로 GPT에게 방법을 알려달라고 합니다.만약 오류가 발생하면, 오류가 생긴 이유도 GPT에게 물어보면 됩니다.​디벨롭 방법수정하고 싶은 사항을 GPT에게 물어보기오류가 발생한다면 오류가 발생한 코드와 함께 GPT에게 물어보기계속해서 오류가 발생하면 웹 서핑을 통해 원인 분석하기​EX) 2페이지의 정보를 가져오는 방법!​이런 방법으로 GPT와 핑퐁하면서 코드를 강화하시면 되겠습니다!중요한 점은 뭘 원하는지를 뉴스 GPT에게 순차적으로 알려줘야 합니다.​GPT가 정답을 틀릴 수 있기 때문에 한번에 다 해줘! 하면 어디서 오류가 났는지찾기 매우 어려워집니다.​위 과정을 반복하여 디벨롭한 결과입니다.​디벨롭 항목1~5페이지의 정보를 읽게 한다.날짜, 뉴스 제목, 링크를 각 A, B, C열에 스크랩한다.날짜는 년도, 월, 일만 출력되게 한다.오늘 날짜의 뉴스만 스크랩한다.상세 코드이렇게 HTML도 모르고, VBA도 기초만 아는 제가 GPT를 이용해서 웹 스크랩 기능을 만들 수 있었습니다.​제가 GPT와 핑퐁하면서 가장 오류가 많이 발생한 부분은 HTML부분인데요 ㅠㅠ3일차에서 구글 플레이 게임 매출 순위 스크랩하기 에서 상세하게 다루겠습니다.

    댓글목록

    등록된 댓글이 없습니다.



    --> ------ 메인 스크립트 ------