Background: With the popularization of the Internet and the development of information technology, the network information data has shown an explosive growth, and the problem of information overload [1] has been highlighted. In order to help users, find the information they are interested in from a large amount of information, and help information producers to let their own information be concerned by the majority of users, the recommendation system came into being. Objectives: However, the sparseness problem, the neglect of semantic information, and the failure to consider the coverage rate faced by the traditional recommendation system limit the effect of the recommendation system to some extent. So in this paper I want to deal with these problems. Methods: This paper improves the performance of the recommendation system by constructing a knowledge graph in the domain and using knowledge embedding technology (openKE), combined with the collaborative filtering algorithm based on the long tail theory. And I use 3 experiments to verify this proposed approach’s performance of recommendation and the ability to dig the long tail information, I compared it with some other collaborative filtering algorithms. Results: The results show that the proposed approach improves the precision, recall and coverage and has a better ability to mine the long tail information. Conclusion: The proposed method improves the recommended performance by reducing the sparsity of the matrix and mining the semantic information between the items. At the same time, the long tail theory is considered, so that users can be recommended to more items that may be of interest.