For simply search without javascript and ajax content try scrapy for best practices. Easy tutorial to learn scrapy ScrapingHub TutorialOfficial site of ScrappingHub
Selenium is good for scraping dynamic content and causes unnecessary overhead as mentioned in above answer.
For above code:
Try avoiding time.sleep
and use EC.presence_of_element_located
and similar functions to attain desired behavior. Selenium Waits