code: def get_block_from_time(self, timestring, error_margin=10):
          
          known_block = self.get_current_block()['block_num']
          known_block_timestamp = self.block_timestamp(known_block)
          timestring_timestamp = parse_time(timestring).timestamp()
          delta = known_block_timestamp - timestring_timestamp
          block_delta = delta / 3
          guess_block = known_block - block_delta
          guess_block_timestamp = self.block_timestamp(guess_block)
          error = timestring_timestamp - guess_block_timestamp
          while abs(error) > error_margin:
              guess_block += error / 3
              guess_block_timestamp = self.block_timestamp(guess_block)
              error = timestring_timestamp - guess_block_timestamp
          return int(guess_block)
docs: Estimate block number from given time
  
              :param str timestring: String representing time
              :param int error_margin: Estimate block number within this interval (in seconds)