2013-08-20 5 views
0

J'ai un projet dans lequel j'ai implémenté un moteur de recherche. Notre guide nous a suggéré d'implémenter le code donné dans le livre d'O 'Reilly Collective Intelligence 2007. C'est une partie du code où une page Web est indexée. Nous utilisons la base de données Sqlite3. J'ai une erreur dans la dernière partie du code et même après avoir beaucoup étudié, je n'ai pas eu de succès.erreur "sqlite3.operationalerror unrecognized token"

def addtoindex(self,url,soup): 
if self.isindexed(url): return 
print 'Indexing '+url 
# Get the individual words 
text=self.gettextonly(soup) 
words=self.separatewords(text) 
# Get the URL id 
urlid=self.getentryid('urllist','url',url) 
# Link each word to this url 
for i in range(len(words)): 
    word=words[i] 
    if word in ignorewords: continue 
    wordid=self.getentryid('wordlist','word',word) 
    self.con.execute("insert into wordlocation(urlid,wordid,location)\values (%d,%d,%d)" % (urlid,wordid,i)) 

Je reçois l'erreur suivante dans la dernière ligne:

sqlite3.OperationalError: jeton non reconnu: "[un symbole je ne sais pas]"

S'il vous plaît aider!

+0

double possible de [sqlite3.OperationalError: jeton non reconnu: "01T00" Python datestamp] (http://stackoverflow.com/questions/11160637/sqlite3-operationalerror-unrecognized-token-01t00-python-datestamp) –

+0

J'ai essayé cela mais ça ne marche pas ... –

Répondre

1

Supprimez la barre oblique inverse de la commande SQL.

En Python, \v spécifie un caractère de contrôle (un onglet vertical).

+0

peut-être juste un espace est manquant avant les valeurs()? –

Questions connexes