Строка кода выполняется без ошибок, но не возвращает никакого вывода - PullRequest
0 голосов
/ 24 марта 2019

Строка внутри второго блока try выполняется без ошибок, но не выводит значение sp500_date, и создается пустой набор данных.Без второго набора блока try-Кроме кода код работает нормально, и создаются необходимые выходные данные

Я попытался выполнить оператор печати непосредственно перед строкой 'sp500_value', и он печатал нормально

# -*- coding: utf-8 -*-
"""
Spyder Editor

This is a temporary script file.
"""

import pandas as pd
import os
import time
import datetime as datetime
import time

path = "G:\ML\Investing\intraQuarter"

def Key_Stats(gather="Total Debt/Equity (mrq)"):
    statspath = path+'/_KeyStats'
    stock_list = [x[0] for x in os.walk(statspath)]
    df = pd.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio','Price','SP500'])
    sp500_df = pd.read_csv("YAHOO-INDEX_GSPC.csv")

    for each_dir in stock_list[1:]:
        each_file = os.listdir(each_dir)
        ticker = each_dir.split("_KeyStats\\")[1]

        if len(each_file) > 0:
            #parsing time from the html file
            for file in each_file:

                date_stamp = time.strptime(file, '%Y%m%d%H%M%S.html')
                unix_time = time.mktime(date_stamp)

                #print(date_stamp, unix_time)
                full_file_path = each_dir+'/'+file
                source = open(full_file_path, "r",encoding='utf-8').read()
                try:
                    value = source.replace('\n','').split(gather+':</td><td class="yfnc_tabledata1">')[1].split('</td>')[0]

                    try:
                        sp500_date = datetime.fromtimestamp(unix_time).strftime('%m/%d/%Y')
                        print(sp500_date)
                        row = sp500_df[sp500_df['Date'] == sp500_date]
                        sp500_value = float(row["Adj Close"])
                    except:
                        sp500_date = datetime.fromtimestamp(unix_time-259200).strftime('%Y-%m-%d')
                        row = sp500_df[sp500_df['Date'] == sp500_date]a
                        sp500_value = float(row["Adj Close"])

                   # stock_price = source.replace('\n','').split('</small><big><b>')[1].split('</b></big>')[0]    
                   # print(stock_price, ":", ticker)
                    df = df.append({'Date':date_stamp, 'Unix':unix_time, 'Ticker':ticker, 'DE Ratio':value}, ignore_index=True)


                except Exception as e:
                    pass


    save = gather.replace(' ', '').replace(')','').replace('(','').replace('/','')+('.csv')
    print(save)
    df.to_csv(save)
    print(df)                


Key_Stats()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...