import firebase_admin from firebase_admin import credentials, firestore from models import TickerData from ticker_detail import PSXScraper,build_ticker import time from init_firebase import db # cred = credentials.Certificate('stokistan-332f5-firebase-adminsdk-fbsvc-5b6cddb01e.json') # firebase_admin.initialize_app(cred) # db = firestore.client() class CacheTicker: def get_all_tickers(self): try: docs = db.collection('kse_30').stream() result = [] for doc in docs: data = doc.to_dict() result.append(data['symbol']) return result except Exception as e: print(f'error{e}') return [] def get_kse_30_ticker_detail(self): print("In kse 30") symbols = self.get_all_tickers() results = [] for symbol in symbols: ticker_detail = PSXScraper(symbol) result = ticker_detail.scrape() ticker = build_ticker(result, symbol) results.append(ticker) time.sleep(6) print("one done") print("all done") return results if __name__ == "__main__": cache = CacheTicker() cache.get_kse_30_ticker_detail()