Exemple #1
0
        public static async Task <ExGallery> DownloadGalleryAsync(string link, int pagenumber, uint maxAttempt = 1)
        {
            uint   attempt    = 1;
            string htmlString = null;

            while (attempt <= maxAttempt && htmlString == null)
            {
                try
                {
                    // Get page html
                    htmlString = await ExClient.GetStringWithExCookie($"{link}?p={pagenumber - 1}&inline_set=ts_l", "dm_t");
                }
                catch (HttpRequestException ex)
                {
                    if (attempt == maxAttempt)
                    {
                        // Last attempt
                        throw;
                    }
                    else
                    {
                        attempt++;
                    }
                }
                catch (Exception ex)
                {
                }
            }

            return(GetExGalleryFromHtml(link, htmlString));
        }
Exemple #2
0
        public static async Task <ExFavoriteList> DownloadFavoritesAsync(int pagenumber)
        {
            try
            {
                // Get page html
                if (pagenumber == 1)
                {
                    var htmlStr = await ExClient.GetStringWithExCookie($"http://exhentai.org/favorites.php", "dm_l");

                    return(ExFavoriteList.FromHtml(htmlStr));
                }
                else
                {
                    var htmlStr = await ExClient.GetStringWithExCookie($"http://exhentai.org/favorites.php?page= {pagenumber - 1}");

                    return(ExFavoriteList.FromHtml(htmlStr));
                }


                //return await client.GetStringAsync(uri);
            }
            catch (Exception ex)
            {
                throw new Exception("Cannot download favorite list");
            }
        }
Exemple #3
0
        private async Task Download(ExGalleryImageListItem image, StorageFile file, BackgroundDownloader downloader)
        {
            Debug.WriteLine(image.Link);

            var htmlSource = await ExClient.GetStringWithExCookie($"{image.Link}");

            Uri uri = new Uri(ExImage.GetImageUriFromHtml(htmlSource));
            DownloadOperation download = downloader.CreateDownload(uri, file);

            //Task<DownloadOperation> startTask = download.StartAsync().AsTask();
            download.StartAsync();
        }
Exemple #4
0
        public async Task LoadFromInternetAsync()
        {
            try
            {
                // Get page html
                var htmlSource = await ExClient.GetStringWithExCookie($"{this.Link}");

                this.ImageSource = GetImageUriFromHtml(htmlSource);
            }
            catch (Exception ex)
            {
            }
        }
Exemple #5
0
        public static async Task <ExGalleryList> DownloadGalleryListAsync(int pagenumber, string uri)
        {
            try
            {
                // Get page html
                var htmlStr = await ExClient.GetStringWithExCookie($"{uri}&page={pagenumber}&inline_set=dm_t", $"xl_{ExSettings.Current.xl}");

                var e = ExGalleryList.GetExGalleryListFromHtml(htmlStr);
                e.uri = uri;
                return(e);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Exemple #6
0
        public static async Task <ExFavoriteList> DownloadFavoritesAsync(int pagenumber, ExFavoriteSortingMode sortingMode)
        {
            try
            {
                // Get page html
                if (pagenumber == 1)
                {
                    var htmlStr = await ExClient.GetStringWithExCookie($"https://exhentai.org/favorites.php?inline_set={SORTING_STRING[(int)sortingMode]}-https://exhentai.org/favorites.php?inline_set-dm_e", $"");

                    return(ExFavoriteList.FromHtml(htmlStr, sortingMode));
                }
                else
                {
                    var htmlStr = await ExClient.GetStringWithExCookie($"https://exhentai.org/favorites.php?page={pagenumber - 1}&inline_set={SORTING_STRING[(int)sortingMode]}-dm_e", $"");

                    return(ExFavoriteList.FromHtml(htmlStr, sortingMode));
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Cannot download favorite list");
            }
        }