private List<Movie> GetMoviesInternal(string url)
		{
			var body = GetHtmlDocument(url);
			if (body == null) return new List<Movie>();
			var posts = body.QuerySelectorAll("#content .post");
			if (posts.Length < 1) return new List<Movie>();
			var movies = new List<Movie>();
			foreach (IElement post in posts)
			{
				var domTitle = post.QuerySelector(".entry-title a");
				if (domTitle == null) continue;
				var domContent = post.QuerySelector(".entry-content p") ?? post.QuerySelector(".entry-summary p");
				if (domContent == null) continue;
				var movie = new Movie
				{
					Title = domTitle.InnerHtml,
					DetailLink = domTitle.GetAttribute("href"),
					ImageLink = domContent.GetElementsByTagName("img").FirstOrDefault()?.GetAttribute("src")
				};
				foreach (var meta in domContent.GetElementsByTagName("strong"))
				{
					string name = meta.Text().Trim().TrimEnd(':').ToLower();
					if (string.IsNullOrEmpty(name)) continue;
					DefineMeta(name, meta, movie);
				}
				movies.Add(movie);
			}

			return movies;
		}
		private static void DefineMeta(string name, IElement dom, Movie movie)
		{
			if (dom == null) throw new ArgumentNullException(nameof(dom));
			if (movie == null) throw new ArgumentNullException(nameof(movie));
			if (new[] { "info", "subtitle", "synopsis" }.Contains(name))
			{
				string link = dom.NextElementSibling.GetAttribute("href");
				if (name == "info") movie.ImdbInfo = link;
				else if (name == "subtitle") movie.SubtitleLink = link;
				//else if (name == "synopsis") movie.DetailLink = link;
				return;
			}
			if (name == "release date")
			{
				string date = dom.NextSibling.NodeValue.Trim();
				date = Regex.Replace(date, @"\([^\)]+\)", string.Empty).Trim();
				movie.ReleaseDate = Regex.IsMatch(date, @"^\d{4}$")
					? new DateTime(int.Parse(date), 1, 1, 0, 0, 0)
					: DateTime.Parse(date);
				return;
			}
			if (new[] { "genre", "stars" }.Contains(name))
			{
				var values = dom.NextSibling.NodeValue.Split(',').Select(word => word.Trim()).ToList();
				if (name == "genre") values.ForEach(movie.Genres.Add);
				else if (name == "stars") values.ForEach(movie.Stars.Add);
				return;
			}
			string value = dom.NextSibling.NodeValue.Trim();
			if (name == "quality") movie.Quality = value;
			else if (name == "source") movie.Source = value;
		}