For simply content scrappingscraping without javascriptJavaScript and ajax content try scrapy for best practices. Scrapy uses pythonPython classes by default as it is a pythonPython framework. Easy
Easy tutorial to learn Scrapy :
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 obtain desired behavior. Selenium Waits