title: Getting inner HTML - Selenium, BeautifulSoup, Python
body: <p>This is a complete edit of the question because I must have asked my question poorly based on the answers - so I will try to be more clear.</p>
  
  <p>I have an object that I am trying to scrape. In my code used on my laptop I have no problems getting this to work. When I transfered over to Pythonanywhere I no longer could get the information I am looking for.</p>
  
  <p>The code that works on my system is:</p>
  
  <pre><code>from urllib.request import urlopen
  from selenium import webdriver
  from selenium.webdriver.common.by import By
  from selenium.webdriver.support.ui import WebDriverWait
  from selenium.webdriver.support import expected_conditions as EC
  from selenium.common.exceptions import NoSuchElementException
  from selenium.common.exceptions import TimeoutException
  from selenium.webdriver.common.keys import Keys
  from bs4 import BeautifulSoup
  import csv
  import time
  import re
  
  #68 lines of code for another section of the site above this working well on my system and on pythonanywhere.
  
  pageSource = driver.page_source
  bsObj = BeautifulSoup(pageSource)
  
  try:
      parcel_number = bsObj.find(id="mParcelnumbersitusaddress_mParcelNumber")
      s_parcel_number =parcel_number.get_text()                         
  except AttributeError as e:
      s_parcel_number = "Parcel Number not found"
  
  # same kind of code (all working) that gets 10 more pieces of data
  
  # Tax Year
  try:
      pause = WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.ID, "TaxesBalancePaymentCalculator")))
      taxes_owed_2015_yr = bsObj.findAll(id="mGrid_RealDataGrid")[1].findAll('tr')[1].findAll('td')[0]
  except IndexError as e:
      s_taxes_owed_2015_yr = "No taxes due"
  </code></pre>
  
  <p>This code works just fine on my laptop with fireforx - on Pythonanywhere if i print the pagesource for the page I am trying to scrape I get the following where my table should be:</p>
  
  <pre><code>&lt;table border="0" cellpadding="5" cellspacing="0" class="WithBorder" width="100%"&gt;
  &lt;tbody&gt;&lt;tr&gt;
  &lt;td id="TaxesBalancePaymentCalculator"&gt;&lt;!--DONT_PRINT_START--&gt;
  &lt;span class="InputFieldTitle" id="mTabGroup_Taxes_mTaxChargesBalancePaymentInjected_mReportProcessingNote"&gt;Please wait while your current taxes are calculated.&lt;/span&gt;&lt;img src="images/progress.gif"/&gt; &lt;!--DONT_PRINT_FINISH--&gt;&lt;/td&gt;
  &lt;/tr&gt; &lt;!--DONT_PRINT_START--&gt;
  &lt;script type="text/javascript"&gt;
                                  function TaxesBalancePaymentCalculator_ScriptLoaded( pPageContent )
                                  {
                                      element('TaxesBalancePaymentCalculator').innerHTML = pPageContent;
                                  }
                                  function results_ready()
                                  {
                                      element('pay_button_area').style.display = 'block';
                                      element('pay_button_area2').style.display = 'block';
                                      element('pay_additional_things_area').style.display = 'block';
                                  }
                                  var no_taxes_calculator = '&amp;amp;nbsp;&amp;lt;' + 'span class="MessageTitle"&amp;gt;The tax balance calculator is not availab
  le.&amp;lt;' + '/span&amp;gt;';
                                  function no_taxes_calculator_available()
                                  {
                                      element('TaxesBalancePaymentCalculator').innerHTML = no_taxes_calculator;
                                  }
                                  function invalid()
                                  {
                                      element('TaxesBalancePaymentCalculator').innerHTML = no_taxes_calculator;
                                  }
                                  loadScript( 'injected/TaxesBalancePaymentCalculator.aspx?parcel_number=15-720-01-01-00-0-00-000' );
                                  &lt;/script&gt;&lt;script id="injected_taxesbalancepaymentcalculator_ScriptTag" type="text/javascript"&gt;&lt;/script&gt;
  &lt;tr id="pay_button_area" style="DISPLAY: none"&gt;
  &lt;td id="pay_button_area2"&gt;
  &lt;table border="0" cellpadding="2" cellspacing="0"&gt;
  &lt;tbody&gt;&lt;tr&gt;
  </code></pre>
  
  <p>I have played around and have found that if I get the innerHTML (as a str):</p>
  
  <pre><code>element('TaxesBalancePaymentCalculator').innerHTML = pPageContent;
  </code></pre>
  
  <p>that section holds my data - problem is I can not preform a findAll on a string and I need certain rows from the table:</p>
  
  <pre><code>taxes_owed_2015_yr = bsObj.findAll(id="mGrid_RealDataGrid")[1].findAll('tr')[1].findAll('td')[0]
  </code></pre>
  
  <p>I need help on how to get that element as an object (not a string) so that I can use it in my data. I have tried so many thing that I could not list them all here. I really could use some help please.</p>
  
  <p>Thanks in advance.</p>