docs: def scroll_by_key_down(self, dat, distance_togo):
          """ 模拟 page_up/down 方式来滚动
  
          :param dat:
          :type dat:
          :param distance_togo:
          :type distance_togo:
          :return:
          :rtype:
          """
          try:
              target = self.get_elements(dat)
              distance_done = 0
              while distance_done < distance_togo:
                  chance = random.random()
                  if chance < 0.05:
                      rand_block(0.5, 0.1)
                      continue
                  distance = rand_pareto_float(100, 10)
                  if chance >= 0.95:
                      distance = -distance
                  key_press_times_ = int(distance // PIXELS_PER_DOWN_KEY)
                  self.mock_key_down(target, key_press_times_)
                  distance_done += key_press_times_ * PIXELS_PER_DOWN_KEY
          except Exception as _:
              log.error(_)
              raise