If you've prove a finite upper bound,then you've proven the program will halt. You don't need to know what the exact number is.
Please note that suggested odd perfect number search algorithm in Python uses an evasive predicate on a big integer which is unbounded.
This means that a typical tracer (or verifier in Turing terms) won't be able to infer the upper bound for the given example.