pas besoin de mettre l'infini pour avoir la réponse, la convergence de l'intégrale est assez rapide
In [17]: integrate.quad(lnth,0,10)
Out[17]: (-1.2337005480750163, 6.393374718527411e-11)
In [18]: integrate.quad(lnth,0,100)
Out[18]: (-1.233700550136171, 1.5423625709942712e-08)
In [20]: integrate.quad(lnth,0,350)
Out[20]: (-1.2337005501361706, 1.6285206516641892e-09)
par contre, quand tu augmentes les bornes, à partir d'un moment tu ne rajoutes que de l'erreur numérique, qui se cumule, et ton résultats n'auras pas de sens (les méthodes numériques sont une discipline à part entière...)
d'autre part, j'ai eu ce message d'erreur en essayant :
In [19]: integrate.quad(lnth,0,1000)
Out[19]: /usr/lib/python2.7/dist-packages/scipy/integrate/quadpack.py:295:
UserWarning: The occurrence of roundoff error is detected, which prevents the
requested tolerance from being achieved. The error may be underestimated.
en allant voir le code, on constate qu'est renvoyé la dernière valeur calculée, qui est donc celle qui fait lever l'erreur...