Also, a little confused about your version of bs4==0.0.1 current, beautifulsoup4 version is:
>>> import bs4
>>> bs4.__version__
'4.9.3'
Never mind, I guess it is a name used to prevent name squatting: https://pypi.org/project/bs4/. But you really should probably use beautifulsoup4 and use an appropriate version instead.
I have no idea exactly what you are doing as you seem to be calling find directly on a string site instead of using BeautifulSoup, but when I use BeautifulSoup, I have no issues finding elements:
from bs4 import BeautifulSoup site = '<div class="bz1lBb"><form class="Pg70bf" id="sf"><input name="ie" type="hidden" value="ISO-8859-1"/><div class="H0PQec"><div class="sbc esbc"><input autocapitalize="none" autocomplete="off" class="noHIxc" name="q" spellcheck="false" type="text" value="desentupidora na consolacao"/><input name="oq" type="hidden"/><input name="aqs" type="hidden"/><div class="x">×</div><div class="sc"></div></div></div><button id="qdClwb" type="submit"></button></form></div>' soup = BeautifulSoup(site, 'html.parser') link = soup.find('div' , attrs={'class': 'bz1lBb'}) print(link)Output:

You would need to dump out a real example to test. I see you are viewing these classes in a browser, but you may not be considering that some of these classes are dynamically injected via JavaScript after the page load. So you would need to dump the actual HTML that scraped to see if those classes, which you think are there, are actually there.