IMDbPY Импорт в MySQL Проблема - PullRequest
       18

IMDbPY Импорт в MySQL Проблема

0 голосов
/ 20 сентября 2011

У меня проблема при попытке импортировать данные imdb из текстовых файлов в базу данных MySQL с помощью скрипта imdbpy2sql.py.

Выдает следующую ошибку.Похоже, код обработчика исключений пытается вставить дублированную запись в таблицу cast_info с существующим первичным ключом.

Может кто-нибудь помочь мне решить эту проблему или предложить какое-нибудь решение этой проблемы?

SCANNING actor: Hall, Stephan
SCANNING actor: Halsey, William F.
 * FLUSHING CharactersCache...
 * TOO MANY DATA (100000 items in CharactersCache), recursion: 1
   * SPLITTING (run 1 of 2), recursion: 1
 * FLUSHING CharactersCache...
Traceback (most recent call last):
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 2951, in <module>
    run()
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 2812, in run
    castLists(_charIDsList=characters_imdbIDs)
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 1576, in castLists
    doCast(f, roleid, rolename)
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 1535, in doCast
    cid = CACHE_CID.addUnique(role)
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 957, in addUnique
    else: return self.add(key, miscData)
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 950, in add
    self[key] = c
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 860, in __setitem__
    self.flush()
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 912, in flush
    self.flush(quiet=quiet, _recursionLevel=_recursionLevel)
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 883, in flush
    self._toDB(quiet)
  File "D:\project\IMDB\IMDbPY-4.7\bin\imdbpy2sql.py", line 1186, in _toDB
    CURS.executemany(self.sqlstr, self.converter(l))
  File "C:\Python27\lib\site-packages\MySQLdb\cursors.py", line 206, in executemany
    r = r + self.execute(query, a)
  File "C:\Python27\lib\site-packages\MySQLdb\cursors.py", line 174, in execute
    self.errorhandler(self, exc, value)
  File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler
    raise errorclass, errorvalue
_mysql_exceptions.IntegrityError: (1062, "Duplicate entry '745684' for key 'PRIMARY'")

1 Ответ

4 голосов
/ 19 октября 2011

Много похожих проблем было исправлено в версии для разработчиков.Пожалуйста, попробуйте еще раз с версией в репозитории Mercurial: https://bitbucket.org/alberanid/imdbpy/

...