init
This commit is contained in:
80
stockpredictor_back/crawler/toSQLite/Crawler.py
Normal file
80
stockpredictor_back/crawler/toSQLite/Crawler.py
Normal file
@@ -0,0 +1,80 @@
|
||||
import os
|
||||
import shutil
|
||||
import datetime
|
||||
import time
|
||||
from stockpredictor.crawler.toSQLite.FnGuideCrawler import FnGuideCrawler
|
||||
from stockpredictor.crawler.toSQLite.MetaCrawler import MetaCrawler
|
||||
from stockpredictor.crawler.toSQLite.StockCrawler import StockCrawler
|
||||
from stockpredictor.analysis.Analyzer import Analyzer
|
||||
|
||||
today = datetime.datetime.now().strftime("%Y-%m-%d")
|
||||
|
||||
# DB Browser for SQLite: http://hleecaster.com/python-sqlite3/
|
||||
|
||||
PROJECT_HOME = os.path.join(os.path.dirname(os.path.join(os.path.dirname(os.path.join(os.path.dirname(os.path.join(os.path.dirname(__file__))))))))
|
||||
|
||||
|
||||
start = time.time()
|
||||
inFnguideFileName = PROJECT_HOME + '/resources/fnguide.db'
|
||||
|
||||
"""
|
||||
# 재무제표는 3개월마다 다운로드를 한다.
|
||||
crawler = FnGuideCrawler()
|
||||
print("[KOSPI 상장기업 재무제표 다운로드]")
|
||||
crawler.crawl_fnguide(inFnguideFileName)
|
||||
|
||||
print("\n[증시자금동향 (신용잔고, 펀드자금 잔고)]")
|
||||
inFileName = PROJECT_HOME + '/resources/meta_3.db'
|
||||
crawler.crawl_money_trend(inFileName)
|
||||
|
||||
print("\n[국내 시장금리]")
|
||||
inFileName = PROJECT_HOME + '/resources/meta_4.db'
|
||||
crawler.crawl_interest_rates(inFileName)
|
||||
"""
|
||||
|
||||
|
||||
crawler = MetaCrawler()
|
||||
print("\n[투자자별 매매동향(Trading_Trend)]")
|
||||
inFileName = PROJECT_HOME + '/resources/meta_2.db'
|
||||
crawler.crawl_trading_trend(inFileName)
|
||||
|
||||
|
||||
print("\n[환율 (USD, JPY, EUR, CNY), 원유 (WTI), 국제금]")
|
||||
inFileName = PROJECT_HOME + '/resources/meta_1.db'
|
||||
crawler.crawl_stocks(inFileName)
|
||||
|
||||
|
||||
print("\n[종목 다운로드]")
|
||||
inFileName = PROJECT_HOME + '/resources/stock.db'
|
||||
crawler = StockCrawler()
|
||||
crawler.crawl_etf_stocks(inFileName)
|
||||
crawler.crawl_stocks(inFileName)
|
||||
|
||||
|
||||
print("\n[지수 저장]")
|
||||
kospiFileName = PROJECT_HOME + '/resources/kospi.tsv'
|
||||
kosdakFileName = PROJECT_HOME + '/resources/kosdak.tsv'
|
||||
outFileName = PROJECT_HOME + '/resources/stock.db'
|
||||
crawler = StockCrawler()
|
||||
crawler.saveIndex("KOSPI", kospiFileName, outFileName)
|
||||
crawler.saveIndex("KOSDAK", kosdakFileName, outFileName)
|
||||
|
||||
print("\n[종목 분석]")
|
||||
# S: 분석까지 진행
|
||||
inFileName = PROJECT_HOME + '/resources/stock.db'
|
||||
analyzer = Analyzer(PROJECT_HOME, inFileName, inFnguideFileName)
|
||||
analyzer.analyze()
|
||||
|
||||
print("\n[종목 결정]")
|
||||
day = datetime.datetime.today().strftime("%Y%m%d")
|
||||
outPath = PROJECT_HOME + "/resources/analysis/" + day
|
||||
if os.path.isdir(outPath):
|
||||
shutil.rmtree(outPath)
|
||||
os.mkdir(outPath)
|
||||
print("print to Html...")
|
||||
analyzer.analyzeToHtml(outPath)
|
||||
# E: 분석까지 진행
|
||||
|
||||
print("time : %6.2f 초", (time.time() - start))
|
||||
|
||||
print ("done...")
|
||||
Reference in New Issue
Block a user