public void Run() { HtmlWeb htmlWeb = new HtmlWeb(); HtmlDocument htmlDocument = htmlWeb.Load(WebConstants.BASE_URL + mCarBrand.Url); HtmlNode logoNode = HtmlNode.CreateNode(htmlDocument.DocumentNode.SelectSingleNode(WebConstants.BRAND_LOGO).OuterHtml); mCarBrand.LogoUrl = logoNode.SelectSingleNode(WebConstants.IMAGE_SRC).Attributes[WebConstants.SRC].Value; //new Thread(new BrandLogoDownloadTask(mCarBrand).Download).Start(); HtmlNode officialSiteNode = HtmlNode.CreateNode(htmlDocument.DocumentNode.SelectSingleNode(WebConstants.BRAND_OFFICIAL_SITE).OuterHtml); mCarBrand.OfficialSite = officialSiteNode.SelectSingleNode(WebConstants.LINK_HREF).Attributes[WebConstants.HREF].Value; HtmlNode countryNode = HtmlNode.CreateNode(htmlDocument.DocumentNode.SelectSingleNode(WebConstants.BRAND_COUNTRY).OuterHtml); mCarBrand.Country = new Country(countryNode.InnerText.Substring(countryNode.SelectSingleNode(WebConstants.EM).InnerText.Length)); mCarBrand.Country.LogoUrl = countryNode.SelectSingleNode(WebConstants.IMAGE_SRC).Attributes[WebConstants.SRC].Value; //new Thread(new CountryLogoDownloadTask(mCarBrand.Country).Download).Start(); HtmlNode brandListNode = HtmlNode.CreateNode(htmlDocument.DocumentNode.SelectSingleNode(WebConstants.BRAND_LIST).OuterHtml); mCarBrand.ListUrl = brandListNode.SelectSingleNode(WebConstants.SCRIPT_SRC).Attributes[WebConstants.SRC].Value; htmlDocument = htmlWeb.Load(WebConstants.BASE_URL + mCarBrand.ListUrl); HtmlNodeCollection factoryNodes = htmlDocument.DocumentNode.SelectNodes(WebConstants.FACTORY_NODE); if (factoryNodes != null) { foreach (HtmlNode tempNode in factoryNodes) { HtmlNode factoryNode = HtmlNode.CreateNode(tempNode.OuterHtml); CarFactory carFactory = new CarFactory(mCarBrand); carFactory.Url = factoryNode.SelectSingleNode(WebConstants.LINK_HREF).Attributes[WebConstants.HREF].Value; carFactory.Name = factoryNode.InnerText.Replace("/", ""); mCarBrand.CarFactoryList.Add(carFactory); } } runFactoryTasks(); }
public FactoryLogoDownloadTask(CarFactory carFactory) { mFilePath = Path.Combine(BASE_FILE_PATH, FACTORY_DIR, PINYIN_DIR); //carFactory.CarBrand.Name, carFactory.Name); mFileName = Path.Combine(mFilePath, PinYinConverter.Get(carFactory.Name) + IMAGE_POSTFIX); carFactory.LogoPath = Path.Combine(Environment.CurrentDirectory, mFileName); initFile(); mUrl = carFactory.LogoUrl; }
public CarType(CarFactory carFactory) { CarFactory = carFactory; }
public WebFactoryTask(CarFactory carFactory) { mCarFactory = carFactory; mCarTypeList = new List<CarType>(); }
public CarType(CarFactory carFactory) { CarFactory = carFactory; }