본문 바로가기
반응형

[python]데이터 분석/[python]웹 스크랩핑(scraping)7

[Web scraping]멜론 TOP100 차트(2/2) 지난 시간에는 멜론 TOP 100 차트 페이지에서 1위부터 100위까지의 곡명, 가수, 앨범, 발매일, 장르 등 상세 정보를 가져와 리스트화 까지 끝냈다. 오늘은 만들어낸 리스트를 JSON파일로 만들어서 아래의 작업을 해보려고 한다. 1. json 파일을 load 하여 Pandas의 DataFrame에 저장하기 2. DataFrame 객체를 DB의 Table에 저장하기 먼저 JSON 파일로 저장해보자 import json #with open(파일명,쓰기모드,인코딩) as file: with open('data/songs.json','w',encoding='utf-8') as file: json.dump(song_detail_list, file) EX) with open json.dump() import .. 2022. 2. 9.
[Web scraping]멜론 TOP100 차트(1/2) 오늘은 멜론 TOP100 차트를 이용해서 아래와 같은 웹스크랩핑(Web scraping)을 해보려고 한다. ## Melon100 Chart * 100곡의 노래의 제목과 SongID 추출해서 list에 저장하기 * 100곡 노래의 상세정보를 추출해서 list와 dict에 저장해서 json 파일로 저장하기 * json 파일을 load하여 Pandas의 DataFrame에 저장하기 * DataFrame 객체를 DB의 Table에 저장하기 Melon top100 차트에 연결하기 url = 'https://www.melon.com/chart/index.htm' req_header_dict = { # 요청헤더 : 브라우저정보 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64.. 2022. 2. 8.
[python]웹 크롤링 이해하기 크롤링이란 무엇일까? 크롤링(crawling) 혹은 스크랩핑(scraping)이란 웹페이지에 있는 데이터들을 프로그래밍적으로 추출하는 것을 뜻한다. 쉽게말해 각기다른 웹 페이지에서 내가 원하는 데이터 또는 필요한 데이터를 프로그맹적으로 추출하여 다시 활용가능한 형태로 만드는 것이다. *스크래핑 - 각각의 페이지에서 정보를 추출하는 행위 &*크롤러 - 자동으로 정보추출을 반복하는 프로그램 크롤링의 원리를 이해하기 위해서는 웹페이지의 구성을 알고 있으면 좋다. 구조를 잡는 HTML, 디자인을 하는 CSS, 사용자와 동적으로 상호작용하는 Javascript로 이루어져있다. 이전의 이라는 글에서 잠깐이나 Rest API에 대해 다루어 보았지만 한번 더 다루어보겠다. 위에서 웹 페이지(Web page)에 대해 알.. 2022. 1. 31.
[python] 파파고 API를 이용한 간단한 번역기 만들기 이번에는 파파고 API를 이용해서 간단한 번역기를 만들어보려고 한다. 그렇기 위해서는 먼저 아래 사이트에서 파파고 API를 사용할 수 있는 권한을 얻어야한다. https://developers.naver.com/main/ NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음 developers.naver.com 가입후 Open API들 중에서 파파고 API 사용 신청을 하면 해당 API를 사용할 수 있는 요청 URL을 얻을 수 있다. 사용 과정에서 client_id 와 secret을 부여받는데 해당 API를 사용할때 꼭 필요.. 2022. 1. 30.
[python]기상청 RSS 데이터를 Json 파일로 저장하기 먼저 JSON과 YAML에 대해 알아보고 시작해보자 JSON 이란? 1. JSON이란 JavaScript Object Notation의 약자로 쉽게 말해 자바스크립트의 객체 표기법이다. 2. XML을 대체하여 많이 사용된다. 그 이유는 사람과 기계 모두 이해하기 쉬운 표현식이며 용량도 작은편이다. 3. JSON은 단지 데이터를 표현하는 방법일뿐 언어 또는 프로그래밍 문법이 아니다. YAML 이란? 1. YAML은 XML, C, 파이썬, 펄, RFC2822에서 정의된 e-mail 양식에서 개념을 얻어 만들어진 '사람이 쉽게 읽을 수 있는' 데이터 직렬화 양식이다. 2. 즉 YAML은 모든 데이터를 리시트, 해쉬, 스칼라 데이터의 조합으로 적절히 표현할 수 있다. 기상청 홈페이지에서 RSS데이터 갖고오기 h.. 2022. 1. 29.
네이버 뉴스 스크랩핑 하기 (news scraping) 1. 먼저 필요한 모듈들을 import 해준다. #%% import requests from bs4 import BeautifulSoup from urllib.parse import urljoin 2. 다음으로 스크랩핑을 원하는 페이지의 URL과 브라우저 정보를 파악하고 이를 통해 아래와 같이 불러온다. #%% url = 'https://news.naver.com/main/main.naver?mode=LSD&mid=shm&sid1=100' req_header_dict = { # 요청헤더 : 브라우저 정보 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692... 2022. 1. 28.
웹 스크랩핑 - 준비과정 오늘은 네이버 뉴스의 카테고리별 페이지별 기사 제목을 불러오는 작업을 해보려고 한다. 정치 경제 사회 생활/문화 IT/과학 등과 같은 페이지를 각각 선택하고 페이지 내에 기사 제목을 불러오는 작업을 하기 위해서는 우선 Web에 대해 이해를 해야 한다. Web의 이해 HTTP - Hyper Text Transfer Protocol - 서버와 클라이언트 사이에서 정보를 주고받기 위한 규약 - 시작 줄, 헤더(Header), 본문(Body)으로 이루어져 있음 - 9개의 메서드가 존재하지만 주로 GET과 POST만 쓰인다. ▶ GET ▶ POST HTTP Client 모듈 - python urllib Python built-in module 간편하게 HTTP request를 보낼 수 있음 로그인 및 세션을 유지.. 2022. 1. 28.
반응형