title: Different results from BeautifulSoup each time
body: <p>I'm doing a web scrape of a website with 122 different pages with 10 entries per page. The code breaks on random pages, on random entries each time it is ran. I can run the code on a url one time and it works while other times it does not.</p>
  
  <pre><code>def get_soup(url):
      soup = BeautifulSoup(requests.get(url).content, 'html.parser')
      return soup
  
  def from_soup(soup, myCellsList):
      cellsList = soup.find_all('li', {'class' : 'product clearfix'})
      for i in range (len(cellsList)): 
          ottdDict = {} 
          ottdDict['Name'] = cellsList[i].h3.text.strip() 
  </code></pre>
  
  <p>This is only a piece of my code, but this is where the error is occurring. The problem is that when I use this code, the h3 tag is not always appearing in each item in the cellsList. This results in a NoneType error when the last line of the code is ran. However, the h3 tag is always there in the HTML when I inspect the webpage. </p>
  
  <p><a href="http://i.stack.imgur.com/h8eyT.png" rel="nofollow">cellsList vs html 1</a></p>
  
  <p><a href="http://i.stack.imgur.com/qJEey.png" rel="nofollow">same comparison made from subsequent soup request</a></p>
  
  <p>What could be causing these differences and how can I avoid this problem? I was able to run the code successfully for a time, and it seems to have all of a sudden stopped working. The code is able to scrape some pages without problem but it randomly does not register the h3 tags on random entries on random pages.</p>