def download_all_data(url)
      next_data_indices = {}

      while next_data_indices
        html = Downloader.read_page(url)

        # Sometimes Pandora returns the same next_data_indices as the previous page.
        # If we don't check for this, an infinite loop occurs.
        # This problem occurs with tconrad.
        prev_next_data_indices = next_data_indices
        next_data_indices = @parser.get_next_data_indices(html)
        next_data_indices = false if prev_next_data_indices == next_data_indices

        url = yield(html, next_data_indices)
      end
    end
def download_all_data(url)
      next_data_indices = {}

      while next_data_indices
        html = Downloader.read_page(url)

        # Sometimes Pandora returns the same next_data_indices as the previous page.
        # If we don't check for this, an infinite loop occurs.
        # This problem occurs with tconrad.
        prev_next_data_indices = next_data_indices
        next_data_indices = @parser.get_next_data_indices(html)
        next_data_indices = false if prev_next_data_indices == next_data_indices

        url = yield(html, next_data_indices)
      end
    end
Downloads all data given a starting URL. Some Pandora feeds only return
 5 - 10 items per page but contain a link to the next set of data. Threads
 cannot be used because page A be must visited to know how to obtain page B.
 @param url [String]