SageMath has a function longest_path to do that.
longest_path
sage: g = graphs.PetersenGraph() sage: lp = g.longest_path(0,3) print(len(lp.edges()))
9