I can recommend Pygments . It works easily and supports many languages. He does what you need, i.e. It wraps the code in tags <span>:
from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter
code = 'print "Hello World"'
print highlight(code, PythonLexer(), HtmlFormatter())
gives
<div class="highlight">
<pre><span class="k">print</span> <span class="s">"Hello World"</span></pre>
</div>
, .
pygmentize script. script -: HTML, LaTeX, ANSI.