Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using AngleSharp;
- using AngleSharp.Dom;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApp1
- {
- class Program
- {
- public static void Main(string[] args)
- {
- var rame = ParseHtml();
- foreach(var item in rame)
- {
- Console.WriteLine($"{item.Id} {item.Title} {item.DirectedBy} {item.OriginalDate}");
- }
- Console.ReadLine();
- }
- public static IEnumerable<Model> ParseHtml()
- {
- var config = Configuration.Default.WithDefaultLoader();
- var address = "https://en.wikipedia.org/wiki/List_of_The_Big_Bang_Theory_episodes";
- var document = BrowsingContext.New(config).OpenAsync(address).Result;
- var cellSelector = ".vevent";
- var cells = document.QuerySelectorAll(cellSelector).ToList();
- foreach (var ParentItem in cells)
- {
- var ChildNodes = ParentItem.ChildNodes;
- var Model = new Model();
- Model.Init(ChildNodes);
- yield return Model;
- }
- }
- }
- public class Model
- {
- public string Id { get; set; }
- public string Title { get; set; }
- public string DirectedBy { get; set; }
- public string WrittenBy { get; set; }
- public string OriginalDate { get; set; }
- public void Init(INodeList Model)
- {
- this.Id = Model[1].TextContent;
- this.Title = Model[2].TextContent;
- this.DirectedBy = Model[3].TextContent;
- this.WrittenBy = Model[4].TextContent;
- this.OriginalDate = Model[5].TextContent;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement