We propose a superpixel weighted low-rank and sparse unmixing (SWLRSU) method for sparse unmixing. The proposed method consists of two steps. In the first step, we segment hyperspectral image into superpixels which are defined as the homogeneous regions with different shape and sizes according to the spatial structure. Then, an efficient method is proposed to obtain a spatial weight term using superpixels to capture the spatial structure of hyperspectral data. In the second step, we solve a superpixel guided low-rank and spatially weighted sparse approximation problem in which spatial weight term obtained in the first step is used as a weight term in sparsity promoting norm. This formulation exploits the spatial correlation of the pixels in the hyperspectral image efficiently, which yields satisfactory unmixing results. The experiments are conducted on simulated and real data sets to show the effectiveness of the proposed method.