detectPagination method

PaginationDetectionResult detectPagination(
  1. String html
)

Detects pagination in HTML

Implementation

PaginationDetectionResult detectPagination(String html) {
  try {
    final document = html_parser.parse(html);

    // Try different pagination detection methods
    final numberedResult = _detectNumberedPagination(document);
    if (numberedResult != null) {
      logger?.info('Detected numbered pagination');
      return numberedResult;
    }

    final nextPrevResult = _detectNextPrevPagination(document);
    if (nextPrevResult != null) {
      logger?.info('Detected next/prev pagination');
      return nextPrevResult;
    }

    final loadMoreResult = _detectLoadMorePagination(document);
    if (loadMoreResult != null) {
      logger?.info('Detected load more pagination');
      return loadMoreResult;
    }

    final infiniteScrollResult = _detectInfiniteScrollPagination(document);
    if (infiniteScrollResult != null) {
      logger?.info('Detected infinite scroll pagination');
      return infiniteScrollResult;
    }

    logger?.warning('Could not detect pagination');
    return PaginationDetectionResult.empty();
  } catch (e) {
    logger?.error('Error detecting pagination: $e');
    return PaginationDetectionResult.empty();
  }
}