class_docstr: Structure to discover and store `Dataset` dependencies.
  
  Used primarily by the `Scene` object to organize dependency finding.
  Dependencies are stored used a series of `Node` objects which this
  class is a subclass of.
class_docstr_tok: ["Structure","to","discover","and","store","`","Dataset","`","dependencies",".","Used","primarily","by","the","`","Scene","`","object","to","organize","dependency","finding",".","Dependencies","are","stored","used","a","series","of","`","Node","`","objects","which","this","class","is","a","subclass","of","."]
docstr: Attempt to find a `DataID` in the available readers.
  
  Args:
      dataset_key (str, float, DataID, DataQuery):
          Dataset name, wavelength, `DataID` or `DataQuery`
          to use in searching for the dataset from the
          available readers.
docstr_tok: ["Attempt","to","find","a","`","DataID","`","in","the","available","readers",".","Args",":","dataset_key","(","str",",","float",",","DataID",",","DataQuery",")",":","Dataset","name",",","wavelength",",","`","DataID","`","or","`","DataQuery","`","to","use","in","searching","for","the","dataset","from","the","available","readers","."]
code: def _find_reader_node(self, dataset_key, query):  # noqa: D417
      """Attempt to find a `DataID` in the available readers.
  
      Args:
          dataset_key (str, float, DataID, DataQuery):
              Dataset name, wavelength, `DataID` or `DataQuery`
              to use in searching for the dataset from the
              available readers.
  
      """
      matching_ids = self._find_matching_ids_in_readers(dataset_key)
      unique_id = self._get_unique_matching_id(
          matching_ids, dataset_key, query
      )
  
      for reader_name, ids in matching_ids.items():
          if unique_id in ids:
              return self._get_unique_reader_node_from_id(
                  unique_id, reader_name
              )
  
      raise RuntimeError("Data ID disappeared.")
  
imports: from __future__ import annotations
  from typing import Container, Iterable, Optional
  import numpy
  from satpy import DataID, DatasetDict
  from satpy.dataset import ModifierTuple, create_filtered_query
  from satpy.dataset.data_dict import TooManyResults, get_key
  from satpy.node import EMPTY_LEAF_NAME, LOG, CompositorNode, MissingDependencies, Node, ReaderNode
label_desc: Use image node_id 9 for calling the DependencyTree obj's underlying member method code with example usage: obj._find_reader_node(dataset_key, query) and returns: self