코딩 연습/코딩배우기
-
파이썬 크롤링(Crawling) 연습 - BeautifulSoup 객체를 모듈로 만들어서 사용해보기코딩 연습/코딩배우기 2020. 10. 27. 15:58
■ 파이썬(Python) BeautifulSoup의 객체를 반환하는 모듈을 만들어서 사용해보기 - 연습 대상 사이트 : 네이버 금융 페이지에서 주가를 추출해서 저장해보기 ▷ 모듈 : beautifulsoup.py # url, headers, params를 인자로 전달하면 BeautifulSoup 객체를 return하는 function 만들기 import requests from bs4 import BeautifulSoup def get_bs_obj(url, headers = None, params = None): result = requests.get(url, headers = headers, params = params) soup = BeautifulSoup(result.content, 'html.pa..
-
파이썬 웹 크롤링(Web Crawling) 알아보기 #9코딩 연습/코딩배우기 2020. 10. 26. 20:39
■ 파이썬 크롤링 실습 - 국회사이트 국회의원 목록 국회(assembly.go.kr) 사이트의 국회의원 현황 페이지의 목록이 '페이지 소스 보기"에서는 안보임 https://assembly.go.kr/assm/memact/congressman/memCond/memCond.do 개발자도구(F12) Network탭에서 목록이 확인됨 https://assembly.go.kr/assm/memact/congressman/memCond/memCondListAjax.do 하단 페이지 클릭 시 Request Method: POST 방식이기 때문에 파라미터가 필요한데, 페이지 클릭 시 Network탭 하단의 Form Data 부분을 보면 currentPage가 1, 7, 13, 19,... 순으로 변경되고 rowPerP..
-
파이썬 웹 크롤링(Web Crawling) 알아보기 #8코딩 연습/코딩배우기 2020. 10. 26. 11:26
■ 파이썬(Python) 크롤링 연습 - 팟빵 목록 추출하기 http://www.podbbang.com/ 팟빵 채널(ex. 일빵빵 입에 달고 사는 기초영어) 선택 후, 우측 목록(파일 리스트) 페이지를 클릭하면 Ajax처럼 작동하는데, 개발자도구(F12)로 Network 탭에서 해당 URL을 확인해보면 Json 형태를 확인할 수 있다. Request URL: http://www.podbbang.com/_m_api/podcasts/7193/episodes ?offset=1&sort=pubdate:desc&episode_id=0&limit=8&with=summary&cache=0 # json 파일임 최소 파라미터 확인 결과, http://www.podbbang.com/_m_api/podcasts/7193/e..
-
파이썬 웹 크롤링(Web Crawling) 알아보기 #7코딩 연습/코딩배우기 2020. 10. 25. 23:11
■ 파이썬 크롤링 실습 - iframe 사이트 크롤링해보기 페이지 소스 보기로 내용이 안보일 경우, 자바스크립트 또는 iframe일 가능성 있음 http://goodmonitoring.com/monitor_board/ 사이트의 경우, ifrmae 형식임 개발자도구(F12)로 소스코드 확인 결과, src 부분(http://goodmonitoring.com/xe/moi)을 새 탭에서 열고, F12로 보면 게시판 리스트가 보이며, 페이징 처리가 되는 구조라서 하단 페이지네이션 부분을 클릭해본 후 페이징 처리 구조 확인함 http://goodmonitoring.com/xe/index.php?mid=moi&page=2 import requests from bs4 import BeautifulSoup from ur..
-
파이썬 웹 크롤링(Web Crawling) 알아보기 #6코딩 연습/코딩배우기 2020. 10. 25. 22:55
■ 멜론차트에서 시대별 곡 추출해보기 멜론차트에서 시대별 곡 추출을 위해 페이지소스보기를 보았으나 관련 소스코드가 안보이는데, 개발자도구(F12) Network탭 XHR에서 관련 소스코드의 URL을 확인할 수 있다. XHL - Request URL: https://www.melon.com/chart/age/list.htm?idx=1&chartType=AG&chartGenre=KPOP\ &chartDate=2000&moved=Y 소스에서 곡 정보 클릭 시, https://www.melon.com/song/detail.htm?songId=2012282 이며, songId가 있는 태그는 javascript인 goSongDetail()와 playSong() 두 곳에 있음 # 시대 import requests f..
-
파이썬 크롤링(Crawling) 연습 - BeautifulSoup 관련 함수코딩 연습/코딩배우기 2020. 10. 25. 17:30
■ 파이썬 크롤링을 위해 알아야 하는 BeautifulSoup 관련 find(), find_all(), select() 등 함수 활용 예시 BeautifulSoup은 HTML, XML 등 파일에서 원하는 데이터를 파싱(Parsing)할 수 있는 라이브러리이다. BeautifulSoup는 매개변수로 전달받은 HTML 문자열(태그 요소와 내용 등의 소스 코드)을 BeautifulSoup 클래스 객체로 변환하여 원하는 정보를 추출할 수 있다. 이 변환을 위해 html.parse, xlml 등의 구문 해석기(parser)를 이용한다. type() 함수로 soup객체를 확인하면 BeautifulSoup 클래스 객체임을 확인할 수 있다. 아래의 html 소스를 test_html 변수에 저장하고, 이를 url로 가정..
-
[python] 파이썬 크롤링(Crawling) 연습 - 네이버 메인페이지 추출해보기코딩 연습/코딩배우기 2020. 10. 23. 14:30
■ 크롤링파이썬 크롤링(Crawling) 연습 - 정리 #1 ▷ 네이버 메인페이지 추출해보기 import urllib.request from bs4 import BeautifulSoup url = 'https://www.naver.com' html = urllib.request.urlopen(url) print(html) # print(html.read()) bsObj = BeautifulSoup(html, 'html.parser') # 파싱 print(bsObj) # 네이버 페이지 소스 보기로 보이는 내용과 같은 내용 출력 BeautifulSoup은 데이터를 추출(파싱 후 추출)하는데 필요한 기능이 들어있는 라이브러리 (파싱 라이브러리) bs4 라이브러리 미설치 에러 발생 --> pip install ..
-
[python] 파이썬 웹 크롤링(Web Crawling) 알아보기 #5코딩 연습/코딩배우기 2020. 10. 21. 15:18
■ 파이썬으로 멜론차트 24Hits 리스트 추출하기 멜론차트에서 24Hits의 노래 목록(리스트)별 가수, 앨범과 곡 정보를 추출하는 파이썬 크롤링 코드 24Hits의 URL은 https://www.melon.com/chart/index.htm 이고, 곡 정보의 URL은 https://www.melon.com/song/detail.htm?songId=32978341 import requests from bs4 import BeautifulSoup import re top100_url = 'https://www.melon.com/chart/index.htm' headers = { 'Referer': 'https://www.melon.com/index.htm', 'User-Agent': ('Mozilla/5..