| | |
| | | import json |
| | | import os |
| | | import threading |
| | | import time |
| | | |
| | | import requests |
| | | |
| | | import constant |
| | | from db.redis_manager import RedisUtils |
| | |
| | | return self.__redisManager.getRedis() |
| | | |
| | | def save_reason(self, code, reason): |
| | | RedisUtils.setex(self.__get_redis(),f"kpl_limitup_reason-{code}", tool.get_expire(), reason) |
| | | RedisUtils.setex(self.__get_redis(), f"kpl_limitup_reason-{code}", tool.get_expire(), reason) |
| | | |
| | | def list_all(self): |
| | | keys = RedisUtils.keys(self.__get_redis(), "kpl_limitup_reason-*") |
| | |
| | | return yesterday_codes |
| | | |
| | | |
| | | # 运行拉取任务 |
| | | def run_pull_task(): |
| | | def __upload_data(type, datas): |
| | | root_data = { |
| | | "type": type, |
| | | "data": datas |
| | | } |
| | | requests.post("http://127.0.0.1:9004/upload_kpl_data", json.dumps(root_data)) |
| | | |
| | | def get_limit_up(): |
| | | while True: |
| | | if tool.is_trade_time(): |
| | | try: |
| | | results = kpl_api.daBanList(kpl_api.DABAN_TYPE_LIMIT_UP) |
| | | result = json.loads(results) |
| | | __upload_data("limit_up", result) |
| | | except Exception as e: |
| | | pass |
| | | time.sleep(3) |
| | | |
| | | def get_bidding_money(): |
| | | # 竞价数据上传 |
| | | while True: |
| | | if int("092600") < int(tool.get_now_time_str().replace(":", "")) < int("092700"): |
| | | try: |
| | | results = kpl_api.daBanList(kpl_api.DABAN_TYPE_BIDDING) |
| | | result = json.loads(results) |
| | | __upload_data("biddings", result) |
| | | except Exception as e: |
| | | pass |
| | | time.sleep(3) |
| | | |
| | | def get_market_industry(): |
| | | while True: |
| | | if tool.is_trade_time(): |
| | | try: |
| | | results = kpl_api.getMarketIndustryRealRankingInfo() |
| | | result = json.loads(results) |
| | | __upload_data("industry_rank", result) |
| | | except: |
| | | pass |
| | | time.sleep(3) |
| | | |
| | | def get_market_jingxuan(): |
| | | while True: |
| | | if tool.is_trade_time(): |
| | | try: |
| | | results = kpl_api.getMarketJingXuanRealRankingInfo() |
| | | result = json.loads(results) |
| | | __upload_data("jingxuan_rank", result) |
| | | except: |
| | | pass |
| | | time.sleep(3) |
| | | |
| | | threading.Thread(target=get_limit_up, daemon=True).start() |
| | | threading.Thread(target=get_bidding_money, daemon=True).start() |
| | | threading.Thread(target=get_market_industry, daemon=True).start() |
| | | threading.Thread(target=get_market_jingxuan, daemon=True).start() |
| | | |
| | | |
| | | if __name__ == "__main__": |
| | | print(KPLLimitUpDataRecordManager.get_latest_blocks_set("002671")) |
| | | run_pull_task() |
| | | input() |