pix / cache_ticker.py
sarim's picture
debugging
84e7ef2
Raw
History Blame Contribute Delete
1.29 kB
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()