public BackgroundDownloader(string start_url, List<Image> storage)
        {
            start_url_ = start_url;
            next_page_url_ = start_url_;
            current_page_url_ = null;
            storage_ = storage;

            http_ = new HTTP();

            thread_ = new Thread(new ThreadStart(thread_Downloader));
            thread_stop_ = false;
        }
Beispiel #2
0
        public Manga(string name)
        {
            name_ = name;
            current_chapter_ = "";
            current_page_index_ = -1;

            chapter_suffixes_ = new List<string>();
            simple_chapter_suffixes_ = new List<string>();
            simple_to_full_chapter_ = new Dictionary<string,string>();
            chapter_to_images_ = new Dictionary<string, List<Image>>();
            chapter_to_background_ = new Dictionary<string,BackgroundDownloader>();

            http_ = new HTTP();

            string main_page_url = url_prefix_ + name_ + "/" + main_page_suffix_;
            string main_page = http_.DownloadWebPage(main_page_url);
            HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
            doc.LoadHtml(main_page);
            HtmlNode table = doc.GetElementbyId("listing");

            foreach (HtmlNode row in table.SelectNodes("tr")) {
              HtmlNode chapter_row = row.SelectSingleNode("td[1]");
              if (chapter_row == null) continue;
              HtmlNode link_node = chapter_row.SelectSingleNode("a[@class='ch']");
              if (link_node == null) continue;
              string link = link_node.Attributes["href"].Value;
              chapter_suffixes_.Add(link);
            }

            // Create list of simplified chapter suffixes
            foreach (string chapter in chapter_suffixes_) {
              Match m = Regex.Match(chapter, "/(c(.*))/");
              string simple = m.Groups[2].Value;

              simple_chapter_suffixes_.Add(simple);

              simple_to_full_chapter_[simple] = chapter;
            }

            MangaKitsuneForm.Inst.ReplaceChapterList(simple_chapter_suffixes_);
        }