Parece que uma de sua lista tem apenas um elemento, que está causando o problema. Por favor, verifique todas as listas:
items = [site.select('//h2').extract()]
item = [site.select('//h3').extract()]
item1 = [site.select('//meta').extract()]
Certifique-se de que estão conforme o esperado.
for index,index1,index2 in range (len( items)),range(len(item)),range(len(item1))
esta sintaxe itera em todas as listas de uma só vez, se algum dos len das listas não corresponder, será gerado um erro de valor,
Para melhor compreensão do seu problema veja abaixo:
In [1]: l1 = [1,2,3]
In [2]: l2 = [4,5,6]
In [3]: l3 = [7]
In [4]: for index,index1,index2 in range (len( l1)),range(len(l2)),range(len(l3)):
....: print "Hi"
....:
....:
Hi
Hi
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
/home/avasal/<ipython console> in <module>()
ValueError: need more than 1 value to unpack
você pode tentar isso se possível:
for index,index1,index2 in zip(range (len( items)),range(len(item)),range(len(item1)))