스파르타코딩클럽 금융인을 위한 파이썬 업무자동화 1주차
import urllib.request
import openpyxl
wb = openpyxl.load_workbook('관리종목.xlsx')
sheet = wb['종목']
new_rows = list(sheet.rows)[1:]
for row in new_rows:
print(row[0].value , row[1].value)
company =row[0].value
code = row[1].value
url = f'https://ssl.pstatic.net/imgfinance/chart/item/area/year3/{code}.png'
urllib.request.urlretrieve(url, f"imgs/{company}.jpg")
https://colab.research.google.com/notebooks/welcome.ipynb
Welcome To Colaboratory
Run, share, and edit Python notebooks
colab.research.google.com
코랩은 연속연결시 최대 90분, 하루 이용제한 12시간 ( 머신러닝, 딥러닝 분석같은거 돌릴 거 아니면 신경쓸필요없음)
[ 코렙에서 라이브러리 install 시 설치 명령어 앞에 ! 를 붙여 주어야 한다. 크롤링 관련 라이브러리 (bs4, requests) #파이썬 문법아님 ]
!pip install bs4 requests
[네이버에서 뉴스 가져오는 함수 만들기]
import requests
from bs4 import BeautifulSoup
def get_news(keyword):
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(f'https://search.naver.com/search.naver?where=news&ie=utf8&sm=nws_hty&query={keyword}',headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
lis = soup.select('#main_pack > section > div > div.group_news > ul > li')
for li in lis:
a = li.select_one('a.news_tit')
print(a.text, a['href'])
get_news('현대자동차')
[ 코렙에서 라이브러리 install 시 설치 명령어 앞에 ! 를 붙여 주어야 한다. 엑셀다루기(openpyxl) #파이썬 문법아님]
[ openpyxl 기본코드]
from openpyxl import Workbook
wb= Workbook()
sheet = wb.active
sheet['A1'] = '안녕하세요!'
wb.save("샘플파일.xlsx")
wb.close()
[ 엑셀 읽기 기본코드]
import openpyxl
wb = openpyxl.load_workbook('샘플파일.xlsx')
sheet = wb['Sheet']
sheet['A1'].value
import openpyxl
wb = openpyxl.load_workbook('샘플파일.xlsx')
sheet = wb['Sheet']
rows = sheet.rows
for row in rows:
print(row[0].value , row[1].value, row[2].value )
[네이버에 기업 리스트를 불러와서 뉴스제목과 해당url을 news 폴더에 날짜이름으로 저장]
import requests
from bs4 import BeautifulSoup
from openpyxl import Workbook
from datetime import datetime
def get_news(keyword):
wb= Workbook()
sheet = wb.active
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(f'https://search.naver.com/search.naver?where=news&ie=utf8&sm=nws_hty&query={keyword}',headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
lis = soup.select('#main_pack > section > div > div.group_news > ul > li')
today = datetime.today().strftime("%Y-%m-%d")
for li in lis:
a = li.select_one('a.news_tit')
row = [a.text, a['href']]
sheet.append(row)
wb.save(f"news/{today}{keyword}.xlsx")
wb.close()
keywords = ['삼성전자','LG에너지솔루션','SK하이닉스','NAVER','삼성바이오로직스','삼성전자우','카카오','삼성SDI','현대차','LG화학','기아','POSCO홀딩스','KB금융','카카오뱅크','셀트리온','신한지주','삼성물산','현대모비스','SK이노베이션','LG전자','카카오페이','SK','한국전력','크래프톤','하나금융지주','LG생활건강','HMM','삼성생명','하이브','두산중공업','SK텔레콤','삼성전기','SK바이오사이언스','LG','S-Oil','고려아연','KT&G','우리금융지주','대한항공','삼성에스디에스','현대중공업','엔씨소프트','삼성화재','아모레퍼시픽','KT','포스코케미칼','넷마블','SK아이이테크놀로지','LG이노텍','기업은행']
for keyword in keywords:
print(keyword)
get_news(keyword)
[content/news 폴더를 압축하기 명령어]
!zip -r /content/files.zip /content/news
[ 해당 패스의 파일 이름 바꾸기]
import os
path = '/content/news'
files = os.listdir(path)
for name in files:
new_name = name.split('.')[0]+ '(뉴스).xlsx'
os.rename(f'/content/news/{name}' , f'/content/news/{new_name}')
[해당 패스의 사진 다운로드 하기]


import urllib.request
url = 'https://ssl.pstatic.net/imgfinance/chart/item/area/year3/005930.png?sidcode=1679913151293'
urllib.request.urlretrieve(url, "삼성전자.jpg")
[숙제 : 관리종목 엑셀 파일을 코랩에서 활용하여 해당 기업의 3개년 그래프 이미지 다운하시]
import urllib.request
import openpyxl
wb = openpyxl.load_workbook('관리종목.xlsx')
sheet = wb['종목']
new_rows = list(sheet.rows)[1:]
for row in new_rows:
print(row[0].value , row[1].value)
company =row[0].value
code = row[1].value
url = f'https://ssl.pstatic.net/imgfinance/chart/item/area/year3/{code}.png'
urllib.request.urlretrieve(url, f"imgs/{company}.jpg")
[해당 imgs폴더의 내용을 imgs.zip으로 압축하시오]
!zip -r /content/imgs.zip /content/imgs
1주차 : 네이버에서 뉴스 가져오는 함수 , 코랩 폴더에 저장 및 다운로드 ,네이버금융사진 저장
2주차 : 데이터프레임( 순이익, 종가, pbr<1, 시총1조이상, per<20) 그려보기 , 해외주식(야후쿼리) 정보 보기https://iamipro.tistory.com/232
금융인을 위한 파이썬 업무자동화 2주차
DataFrame 만들기 Pandas : 데이터 분석 해외주식야후사이트: https://finance.yahoo.com/quote/AAPL?p=AAPL&.tsrc=fin-srch Apple Inc. (AAPL) Stock Price, News, Quote & History - Yahoo Finance Find the latest Apple Inc. (AAPL) stock quote, histor
iamipro.tistory.com
3주차 : dart 상장/비상장 엑셀 추출, dart API 로 종목 정보 (증자,배당,직원정보,이사보수, 재무정보, 이익잉여금, 당기순이익, 지분율, 연봉 TOP5 등)
https://iamipro.tistory.com/233
금융인을 위한 파이썬 업무자동화 3주차
스파르타코딩클럽 금융인을 위한 파이썬 업무자동화 3주차 [다트 open api 발급] https://opendart.fss.or.kr/uat/uia/egovLoginUsr.do 전자공시 OPENDART 시스템 | 로그인 opendart.fss.or.kr [ 구글 드라이브 코랩 가기] h
iamipro.tistory.com
4주차 : 최적의 단기/장기 이동평균선 구하기
https://iamipro.tistory.com/234
금융인을 위한 파이썬 업무자동화 4주차
금융인을 위한 파이썬 업무자동화 4주차 https://drive.google.com/ Google Drive: 로그인 이메일 또는 휴대전화 accounts.google.com [라이브러리 설치 명령어 yfinance pandas-datareader finance-datareader !pip install yfinance
iamipro.tistory.com
5주차 : 변동성 돌파적략 최적값 k 구하기 , 월요일에 사서 금요일에 팔경우 수익나는 종목 보기
https://iamipro.tistory.com/235
금융인을 위한 파이썬 업무자동화 5주차
금융인을 위한 파이썬 업무자동화 5주차 https://drive.google.com/ Google Drive: 로그인 이메일 또는 휴대전화 accounts.google.com 전일 종가에서 금일 시작가에서 판다. [ 오르는 추세라 판단] [주가 가져오는
iamipro.tistory.com
'Spring & Backend' 카테고리의 다른 글
| 금융인을 위한 파이썬 업무자동화 3주차 (0) | 2023.03.28 |
|---|---|
| 금융인을 위한 파이썬 업무자동화 2주차 (0) | 2023.03.27 |
| Java/Spring 기반 서비스 개발과 MSA 구축 (0) | 2023.03.23 |
| 실용주의 프로그래머 [8장 46 챕터] (0) | 2023.03.22 |
| 클린아키텍쳐 - 소프트웨어의 구조와 설계의 원칙[7부 34장] (0) | 2023.03.21 |
