title: What are the benefits of using html documents and nodes vs simple string manipulation in web scraping?
body: <p>I am trying to scrape a webpage, so I can collect information from it.</p>
  
  <p>To that end I saw a guide that shows how to make a web scraper using the library "Html Agility Pack". It is a library that provides classes for HTML node/element selection and data retrieval from them but after toiling on it I really don't see the point or benefit using high-level objects would give me over simple <code>string.substring</code>.</p>
  
  <p>In both cases I have to get the HTML somehow and in both cases I have to know what the structure of the HTML is beforehand. But while I can just say <code>string.substring</code> from the element that interests me to the value I want to extract with said library and, I bet, other high end objects I have to instantiate them, navigate though their various methods that would break and explode if I don't use them by their specification, that I must also learn, toil over trying to make it all work with high end abstractions and best practices to end up with 100s of lines of code that will, I suppose, give me the exact same result as a 10 line <code>string.replace</code> code.</p>
  
  <p>So is there any point in using high end objects for HTML data extraction over simple <code>string</code> methods?</p>