class_docstr: Have one place to retrieve data from Yahoo API in order to ease caching and speed up operations.
  Singleton means one session one cookie shared by all threads.
class_docstr_tok: ["Have","one","place","to","retrieve","data","from","Yahoo","API","in","order","to","ease","caching","and","speed","up","operations",".","Singleton","means","one","session","one","cookie","shared","by","all","threads","."]
code: def get_raw_json(
      self,
      url,
      user_agent_headers=None,
      params=None,
      proxy=None,
      timeout=30,
  ):
      utils.get_yf_logger().debug(f"get_raw_json(): {url}")
      response = self.get(
          url,
          user_agent_headers=user_agent_headers,
          params=params,
          proxy=proxy,
          timeout=timeout,
      )
      response.raise_for_status()
      return response.json()
  
imports: import functools
  from functools import lru_cache
  import requests
  from bs4 import BeautifulSoup
  import datetime
  from frozendict import frozendict
  from .None import utils, cache
  import threading
label_desc: Use image node_id 17 for calling the YfData obj's underlying member method code with example usage: obj.get_raw_json(url, user_agent_headers, params, proxy, timeout) and returns: response