Fault localization aims to efficiently locate faults when debugging programs , reducing software development and maintenance costs. Spectrum-based fault location (SBFL) is the mainstream fault location technology, which calculates and ranks the suspicious value of each program entity with a specific formula by counting the coverage information of all the program entities and execution results of test cases. However, previous SBFL techniques suffered from low accuracy due to the sole use of execution coverage. This paper proposed an approach GNet4FL based on the graph convolutional neural network. GNet4FL first collects static features based on code structure and dynamic features based on test case results. Then, GNet4FL uses GraphSAGE to obtain node representation of source codes and performs feature fusion on an entity consisting of multiple nodes, which preserves the topological information of the graph. Finally, the representation of each entity is input to the multi-layer perceptron for training and ranking entities. The results show that GNet4FL successfully located 160 out of 262 faults, outperforming the three state-of-the-art methods, 94,42,14 higher in Top-1, and having close results to Grace with less cost. Furthermore, we investigated the impact of each component (i.e., graph neural network , pruning, and dynamic features) of GNet4FL on the results. We found that they all have a positive impact on our proposed approach.