title: Parsing with Goutte - how to target an element after one containing a text string
body: <p>I am using <a href="https://github.com/FriendsOfPHP/Goutte" rel="nofollow noreferrer">https://github.com/FriendsOfPHP/Goutte</a> to parse and extract data and I am doing well...</p>
  
  <p>But now I stumbled upon a slightly unfriendly spot:</p>
  
  <pre><code>&lt;tr&gt;
  &lt;th&gt;Website:&lt;/th&gt;
  &lt;td&gt;
      &lt;a href="http://www.adres.com" target="_blank"&gt;http://www.adres.com&lt;/a&gt;
  &lt;/td&gt;
  &lt;/tr&gt;
  </code></pre>
  
  <p>I am trying to get text from a <code>td</code> element which immediately follows a <code>th</code> element which contains a specific string, <code>Website:</code> in this case.</p>
  
  <p>My php looks like this:</p>
  
  <pre><code>$client3 = new \Goutte\Client();
  $crawler3 = $client3-&gt;request('GET', $supplierurl . 'contactinfo.html');
  
  if($crawler3-&gt;filter('th:contains("+Website+") + td a')-&gt;count() &gt; 0) {
      $parsed_company_website_url = $crawler3-&gt;filter('th:contains("Website:") + td')-&gt;text();
  } else {
      $parsed_company_website_url = null;
  }
  return $parsed_company_website_url;
  </code></pre>
  
  <h3>Problem</h3>
  
  <p>My code doesn't work. </p>
  
  My attempts
  
  <ul>
  <li>I tried using both <code>"+Website+"</code> and <code>"Website:"</code></li>
  <li>I tried to do some smart targeting by counting rows of the table, but each DB entry on the target site arranges items differently, no reliable pattern.</li>
  </ul>
  
  <h3>TO DO</h3>
  
  <p>Make the script extract the text from a</p>