Mysql
 sql >> Base de données >  >> RDS >> Mysql

erreur lors de l'insertion dans mysql à partir de python for loop

Il semble qu'une de vos listes ne comporte qu'un seul élément, ce qui est à l'origine du problème.Veuillez vérifier toutes les listes :

 items = [site.select('//h2').extract()]
 item = [site.select('//h3').extract()]
 item1 = [site.select('//meta').extract()]

Assurez-vous qu'ils sont comme prévu.

for index,index1,index2 in range (len( items)),range(len(item)),range(len(item1))

cette syntaxe itère sur toutes les listes à la fois, si l'une des longueurs de listes ne correspond pas, une erreur de valeur sera générée,

Pour une meilleure compréhension de votre problème, voir ci-dessous :

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

pouvez-vous essayer ceci si possible :

for index,index1,index2 in zip(range (len( items)),range(len(item)),range(len(item1)))