As the wireless sensor networks (WSNs) technology has great advancement, small and smart WSN systems now can be used for more complicated and challenging applications. WSNs investigation has primarily believed the use of a convenient and inadequate energy source for empowering the sensors. A sensor becomes useless in the absence of energy and becomes unable to contribute to the utility of the network as a group. Therefore, extensive efforts have been used in finding energy-efficient networking protocols for increasing the life span of WSNs. However, there are promising WSN applications where the sensors are obligatory to work for a long time after their deployments. In these cases, batteries are tough or impractical to replace/recharge. Although, a little amount of power is required for these applications, the useable lifetime of WSNs is decreased by the gradual degradation of the batteries. With the motivation of raising the usable WSNs around us and to value a number of economic and environmental limitations, researchers are looking for new green and theoretically unlimited energy sources. Harvesting of energy from the ambient energy is the basement of these new sources. Energy harvesting devices efficiently and effectively capture, accumulate, store, condition, and manage this energy and supply it in a form that can be used to empower WSNs. This harvested energy can be an alternative energy source for adding-on a principal power source and thus increase the consistency of the whole WSN by preventing the disruption of power. A great deal of research has been reviewed and specific ranges of applications have been found. Though there are challenges to overcome, different researchers have taken different approaches to solve those. In this review, we have emphasized on different scopes, challenges, ideas and actions of energy harvesting for WSNs.