If you want a wide range of symbolic integration it would make more sense to use Rich's pattern matching method. Visit https://rulebasedintegration.org/
There is also a theory of integration, the Risch integral algorithm. See https://en.wikipedia.org/wiki/Risch_algorithm
Axiom, a computer algebra system, implements the Risch algorithm. To see how these two approaches compare, look at the Axiom Computer Algebra Test Suite Visit http://axiom-developer.org/axiom-website/CATS/index.html