protected override async Task ExecuteAsync(CancellationToken cancellationToken) { AutomaticTorrentDownloaderConfiguration configuration = new AutomaticTorrentDownloaderConfiguration(); while (!cancellationToken.IsCancellationRequested) { configuration.Load(); foreach (Site site in configuration.SearchedSites.Select(id => SiteProvider.GetById(id))) { foreach (ParsedMedia searchedMedia in configuration.SearchedMedia) { string query = GetSearchQuery(searchedMedia); var searchResults = _torrentFinder.GetSearchResultsFromSite(site, query); var match = _matchCalculator.GetBestMatch(searchedMedia, searchResults); if (match == null || match.Score < 0.5) { continue; } } } await Task.Delay(TimeSpan.FromMinutes(configuration.RefreshDelayMinutes), cancellationToken); } }
public void TorrentSearchTest() { ParsedMedia parsedMedia = _filenameParser.Parse("The.Secret.Life.of.Walter.Mitty.2013.1080p.BluRay.x264.YIFY"); Site leedX = SiteProvider.LeedX; IEnumerable <ParsedMedia> searchResults = _torrentFinder.GetSearchResultsFromSite(SiteProvider.ThePirateBay, $"{parsedMedia.Title} {parsedMedia.Year}", 10) .Select(result => _filenameParser.Parse(result.Name)); //TorrentSiteDetail torrentDetail = TorrentFinderService.GetTorrentDetail(searchResults[0]); foreach (ParsedMedia searchResult in searchResults) { Console.WriteLine(searchResult); } }
public EnumerableResultModel <SearchResultModel> Search(string query) { var searchResults = _torrentFinder.GetSearchResultsFromSite(SiteProvider.LeedX, query, 10); return(new EnumerableResultModel <SearchResultModel> { Results = searchResults .OfType <TorrentSiteSearchResult>() .Select(result => new SearchResultModel { SiteId = result.Site.Id, Name = result.Name, Size = result.Size, Seeds = result.Seeds, Leeches = result.Leeches, Uploaded = result.Uploaded, RelativeDetailUrl = result.RelativeDetailUrl }) }); }