title: Can I simultaneously search for multiple tag types when Screen Scraping with HtmlAgilityPack?
body: <p>Although still in a malleable state, this code works:</p>
  
  <pre><code>public List&lt;string&gt; GetParagraphsListFromHtml(string sourceHtml)
  {
      var pars = new List&lt;string&gt;();
      HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
      doc.LoadHtml(sourceHtml);
  
      var getHtmlWeb = new HtmlWeb();
      var document = getHtmlWeb.Load("http://www.montereycountyweekly.com/opinion/letters/article_e333a222-942d-11e3-ba9c-001a4bcf6878.html"); 
      var pTags = document.DocumentNode.SelectNodes("//p");
      int counter = 1;
      if (pTags != null)
      {
          foreach (var pTag in pTags)
          {
              pars.Add(pTag.InnerText);
              MessageBox.Show(pTag.InnerText);
              counter++;
          }
      }
      MessageBox.Show("done!");
      return pars;
  }
  </code></pre>
  
  <p>What I really want, though, is to grab all text elements (in order), not just paragraph tags ("SelectNodes("//p")).</p>
  
  <p>Is it possible to get multiple tag types simultaneously, a la something like (pseudocode):</p>
  
  <pre><code>var textTags = document.DocumentNode.SelectNodes("//h1", "//h2", "//h3", "//p", );
  </code></pre>
  
  <p>...or a LINQified version, such as:</p>
  
  <pre><code>    foreach (var par in doc.DocumentNode
          .DescendantNodes()
          .Single(x =&gt; x.Id == "body")
          .DescendantNodes()
          .Where(x =&gt; x.Name == "h1" || x.Name == "h2" || x.Name == "h3" || x.Name == "hp" || ))
  </code></pre>
  
  <p>?</p>