public async Task ExecuteAsync(CancellationToken cancellationToken) { var url = ConsoleCommand.ReadLine("is url?"); if (string.IsNullOrWhiteSpace(url)) { ConsoleCommand.WriteLine("please input a full url."); return; } var doc = await AngleSharp.BrowsingContext.New(Configuration.Default.WithDefaultLoader()).OpenAsync(url); var elements = doc.QuerySelectorAll("img"); foreach (var element in elements) { if (element.HasAttribute("data-width") == false || element.HasAttribute("data-height") == false) { continue; } var src = element.GetAttribute("data-src"); if (src.StartsWith("//")) { src = $"{doc.BaseUrl.Scheme}:{src}"; } ConsoleCommand.WriteLine(src); await PostToDB.PostAsync("image", src, string.Empty, 0); } }
public async Task ExecuteAsync(CancellationToken cancellationToken) { var url = ConsoleCommand.ReadLine("is url?"); if (string.IsNullOrWhiteSpace(url)) { ConsoleCommand.WriteLine("please input a full url."); return; } var desc = ConsoleCommand.ReadLine("is desc?"); await PostToDB.PostAsync("image", url, desc, 0); }
public async Task ExecuteAsync(CancellationToken cancellationToken) { var url = ConsoleCommand.ReadLine("is file path?"); if (string.IsNullOrWhiteSpace(url)) { ConsoleCommand.WriteLine("please input a full url."); return; } var desc = ConsoleCommand.ReadLine("is desc?"); var headtext = ConsoleCommand.ReadLine("is request file or header text?"); if (headtext.EndsWith(".req")) { headtext = System.IO.File.ReadAllText(headtext); } var index = 0; int.TryParse(ConsoleCommand.ReadLine("is index?"), out index); var headers = headtext.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToDictionary(c => c.Split(':')[0], c => c.Split(':')[1]); headers.Add("path", new Uri(url).PathAndQuery); await PostToDB.PostAsync("video", url, desc, index, headers); }