我第一次使用iTunes EPF导入时遇到问题,在我尝试第一次数据导入之前,设置似乎已经通过他们的指南了,这提供了以下输出:
root@services:/var/www/html/epf# ./EPFImporter.py /var/www/html/epf/collection/itunes20180124/
2018-03-02 16:26:02,255 [INFO]: Beginning import for the following directories:
/var/www/html/epf/collection/itunes20180124/
2018-03-02 16:26:02,256 [INFO]: Importing files in /var/www/html/epf/collection/itunes20180124/
2018-03-02 16:26:02,257 [INFO]: Starting import of /var/www/html/epf/collection/itunes20180124...
2018-03-02 16:26:02,258 [INFO]: Beginning full ingest of epf_collection (7682010 records)
Traceback (most recent call last):
File "./EPFImporter.py", line 452, in <module>
main()
File "./EPFImporter.py", line 435, in main
fieldDelim=fieldSep)
File "./EPFImporter.py", line 220, in doImport
ing.ingest(skipKeyViolators=skipKeyViolators)
File "/var/www/html/epf/EPFIngester.py", line 113, in ingest
self.ingestFull(skipKeyViolators=skipKeyViolators)
File "/var/www/html/epf/EPFIngester.py", line 128, in ingestFull
self._createTable(self.tmpTableName)
File "/var/www/html/epf/EPFIngester.py", line 299, in _createTable
cur.execute("""DROP TABLE IF EXISTS %s""" % tableName)
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 253, in execute
self._warning_check()
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 155, in _warning_check
warn(self.Warning(*w[1:3]), stacklevel=3)
_mysql_exceptions.Warning: (1051L, u"Unknown table 'epf.epf_collection_tmp'")
root@services:/var/www/html/epf#
日志文件似乎没问题,我真的没有了:
2018-03-02 16:23:11,336 [INFO]: Beginning import for the following directories:
/var/www/html/epf/collection/itunes20180124/
2018-03-02 16:23:11,337 [INFO]: Importing files in /var/www/html/epf/collection/itunes20180124/
2018-03-02 16:23:11,338 [INFO]: Starting import of /var/www/html/epf/collection/itunes20180124...
2018-03-02 16:23:11,339 [INFO]: Beginning full ingest of epf_collection (7682010 records)
看起来它可以读取文件OK,因为它知道其中包含了多少条记录)。不幸的是,我对python几乎一无所知,所以我有点失落。我可以看到最后一行有警告,但我真的不知道该怎么办。
任何帮助将不胜感激。谢谢。
答案 0 :(得分:0)
看起来这是Apple意识到的问题,可能不是我做错了什么,希望这会对某人有所帮助。
嗨, 感谢您对EPF的询问。请放心,我们的工具和产品支持团队正在积极处理此问题。一旦我们获得该团队的更新,我们会立即联系并通知您。非常感谢您的耐心和理解。 问候, 联盟计划团队
当我问到ETA要解决的问题时,我收到了回复:嗨, 感谢您的查询。我理解你对EPF问题的沮丧。我们已将此升级到我们的工程部门,并在获得信息后提供更新。目前,我们还没有ETA什么时候可以运行。 要回答您的第二个问题,我们无法通过其基础架构和后端设置来增加Search API的限制。我们再次努力尽快解决EPF问题,一旦解决,我们将提供更新。感谢您的耐心等待。
答案 1 :(得分:0)
MySQLdb将MySQL警告变成python警告,由于某种原因,EPFIngester.py中的默认设置是将警告视为错误。您可以通过 EPFImporter.py 中的第56行注释来解决此问题。
warnings.filterwarnings('error')
# warnings.filterwarnings('error')