It should be possible to query the spectrum at a single wavelength, rather than having to provide an array.
Note that simply wrapping the single value in an array will be insufficient:
>>> sp=S.BlackBody(30000)
>>> sp(1000)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/user/laidler/pyinstall/pysynphot/spectrum.py", line 781, in __call__
sp._fluxtable = planck.bbfunc(wavelength, self.temperature)* RENORM
File "/user/laidler/pyinstall/pysynphot/planck.py", line 32, in bbfunc
factor = N.zeros(wave.shape, dtype=N.float64)
AttributeError: 'int' object has no attribute 'shape'
>>> sp(N.array([1000]))
Warning: divide by zero encountered in double_scalars
Warning: invalid value encountered in divide
array([ NaN])
>>> sp(N.array([1000,1001]))
array([ 0.79833079, 0.79899633])