본문 바로가기

크롤링11

[심화방] VBA_심화_100제 #21 [ 서울시 상권분석 크롤링 ] 회사 업무중에 서울시 상권분석을 하기 위해 참조한 사이트를 소개하려고 한다. 서울시 상권분석 서비스 (seoul.go.kr) 서울시 상권분석 서비스 Chrome, Microsoft Edge, Safari등 타 브라우저 이용 부탁드립니다. 이 브라우저는 서비스 지원이 곧 종료되어 최적화된 서비스 제공을 위해 Chrome, Microsoft Edge, Safari 등 타 브라우저로 서비스 이용 부탁드 golmok.seoul.go.kr 이 사이트에서 [지역·상권별 현황] 탭에 대해서 보려고 한다. 이 사이트는 몇개의 조건 검색으로 Json형태로 사이트에서 뿌려주는데 반응도 빠르다. 허나 한번에 하위메뉴를 여는 방법이 없고, 엑셀이나 다른방식으로 데이터를 다운받을 수 없어 이것을 재 가공하기 위해서는 일일이 긁.. 2024. 3. 12.
[심화방] VBA_심화_100제 #18 [ 유튜브댓글 조회하기] 유튜브 댓글 관련 크롤링 코드를 올려보려한다. 문제가 될수 있어서 [답글 더보기] 까지 완전히 다 열리는 코드는 올리지 못함을 양해바란다. 댓글 2천개 기준으로 5분정도 소요되는거 같다. 댓글 2천개 미만은 금방되는거 같으니 코드를 한번 유심히 뜯어보시길 바란다. 코드진행은 이렇다. 1. 맨 하단까지 스크롤을 다 내려서 태그를 다 열어준다음 2. 댓글 버튼을 클릭해서 댓글들을 다 열어준다. 3. 댓댓글은 다시 위로 올라가서 하나하나 다시 태그안으로 들어가서 열어줘야한다. [ 코드에는 빠져있음 ] 4. 배열에 담아서 5. 엑셀 시트에 뿌려준다.. 2번은 스크롤을 열어서 요소를 찾은 후 모두 클릭해주면 되는데 3번은 그렇게 하면 화면에 보이는 부분만 열리게 되어서... 다시 처음부터 [답글 더보기]를 찾아서.. 2023. 6. 12.
[GAS] cheerio를 이용한 Daum뉴스 크롤링 더보기 function getContent_(url) { return UrlFetchApp.fetch(url).getContentText() } function scraper() { const content = getContent_("https://news.daum.net/"), // 다음 뉴스 검색 URL $ = Cheerio.load(content), // 크롤링을 위한 Cheerio 선언 daum_news = $('.list_newsissue > li').toArray(); // 다음 뉴스 메인기사 태그를 daum_news에 배열에 담아라 let sht = SpreadsheetApp.getActiveSheet(), // 현재시트를 sht로 선언 titles = []; // 최종 배열들을 담을 tit.. 2023. 4. 19.
[심화방] VBA_심화_100제 #14 [ 셀레니움 네이버항공 조회] 셀레니움으로 항공권을 조회하는 것을 해보려한다. 더 섬세하게 만들수도 있겠지만, 만들면서 생각해봐도 조회하는 정도 밖에는 쓸모가 없을 것 같아서 딱 그정도로 구현을 가능하게 하였다. 위와 같이 크롤링 되는 모습이 화면에 보이도록 창의 위치과 엑셀 창의 크기를 조절하는 코드이다. Application.WindowState = xlNormal '= 창의 위치와 크기 조정 Application.Top = 0 Application.Left = 0 Application.Width = 730 Application.Height = 1080 strUrl = "https://flight.naver.com/" '= 항공권 예매 Sel.Start "chrome" Sel.Window.SetPosition 960, 0 Sel... 2023. 4. 1.