title: document.getElementById() does not work with puppeteer finding and id on a <path> element on SVG
body: <p>Puppeteer cannot select an svg element I have created with d3.js</p>
  
  <p>This is a snippet from inside an async function:</p>
  
  <pre><code>  const chromiumBrowser = await puppeteer.launch(BROWSER_CONFIG);
    const page = await chromiumBrowser.newPage();
    await page.goto(WIND_DISPLAY_CLIENT_URL);
  
    const result = await page.evaluate(x =&gt; {
      return Promise.resolve(document.getElementById('needle'));
    }, 7);
    const result2 = await page.evaluate(x =&gt; {
      return Promise.resolve(document.getElementById('needle'));
    }, 7);
    console.log('what is the result?');
    console.log(result);
    console.log(result2);
    console.log(result === result2);
  
    await delay(20000);
  
    const result3 = await page.evaluate(x =&gt; {
      return Promise.resolve(document.getElementById('needle'));
    }, 7);
  
    console.log('result 3 is after the timeout?');
    console.log(result3);
  
    await chromiumBrowser.close();
  </code></pre>
  
  <p>This is how the SVG renders in the DOM:</p>
  
  <pre><code>&lt;path d="M5,0C3.333333333333333,-67.5,1.6666666666666667,-135,0,-135C- 
  1.6666666666666667,-135,-3.333333333333333,0,-5,0C-3.333333333333333,0,-1.6666666666666667,5,0,5C1.6666666666666667,5,3.333333333333333,2.5,5,0" 
  id="needle" transform="rotate(-180)"&gt;&lt;/path&gt;
  </code></pre>
  
  <p>And this is the d3 code snippet that renders it:</p>
  
  <pre><code>this.updatedParentSvg = parentSvg
    .append('g')
    .data([lineData])
    .attr('class', 'pointer')
    .attr('id', 'pointer')
    .attr('transform', center);
  
  const pointerLine = d3.line().curve(d3.curveMonotoneX);
  this.needle = this.updatedParentSvg
    .append('path')
    .attr('d', pointerLine)
    .attr('id', 'needle')
    .attr('transform', 'rotate(' + this.config.minAngle + ')');
  </code></pre>
  
  <p>If I select the parent DOM g element, I can run document.getElementById and get values back but not on the path element, which is where the problem is.</p>