IMDB 到 MySQL:将 IMDB 数据插入 MySQL 数据库
我正在寻找一种解决方案,将所有 IMDB 数据导入我自己的 MySQL 数据库。我已经从他们的主页下载了所有 IMDB 数据文件,这些文件都是 *.list 文件格式(在 Windows 中)。
我想检索该信息并将其正确插入到我的 MySQL 数据库中,以便我可以进行一些测试和查询搜索。
我遵循了一份指南,但大约有一半的人意识到这是 2004 年的指南,现在的工作方式与七年前的工具不太协调。
我浏览了网络的应用程序、php 脚本、python 脚本等,但没有找到解决方案。 IMDB 本身引用的 W32 工具也不起作用。
有谁知道解决方案或完成这项任务的方法吗?
I’m looking for a solution to import all the IMDB data into my own MySQL database. I’ve downloaded all the IMDB data files from their homepage which are all in the file format *.list (in Windows).
I want to retrieve and that information and insert it correctly into my MySQL database so I can do some test and query searches.
I followed a guide but about half I realized that it was a 2004 guide and the way things works now did not go well with the tools from seven years ago.
I’ve browsed the net for applications, php-scripts, python-script and what not to find a solution but with no luck. The W32 tool that IMDB themselves references to don’t work either.
Is there anyone who knows a solution or a way to do this task?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
有一些不错的py脚本,女巫帮助了我。只需建立连接并运行即可。 〜1小时解决所有问题。
编辑:使用此自述文件来制作脚本。
There is some nice py script, witch helped me. Just make connection and run it. ~1hr to work around everything.
EDIT: Use this readme file for making script.
IMDbPY 和 IMDb 数据文件格式的更改意味着现有答案不再有效(截至 2018 年 1 月)。
我使用的是 Ubuntu 17.10 和 MariaDB 10.1(不是 MySQL,但以下也适用于 MySQL)。
IMDbPY 的变化
IMDbPY 的最新版本是 6.2,它是在 Python 3 中实现的,并且依赖于
gcc
和SQLObject< /code> 已被删除。另外,Python 包
MySQL-python
不适用于 Python 3,因此我们安装mysqlclient
;见下文。 (mysqlclient
的 API 与MySQL-python
兼容。)对 IMDb 数据文件格式的更改
更改为IMDb 数据文件格式于 2017 年 12 月推出,IMDbPY 6.2(当前版本)尚不支持新文件格式。 (请参阅此 GitHub 问题。)
在解决此问题之前,请使用最新版本的以旧格式发布的 IMDd 数据,可在 ftp://ftp.fu-berlin.de/pub/misc/movies/database/frozendata/。下载所有
*.list.gz
文件(不包括子目录中的文件)。要遵循的新步骤
安装 Python 3 和所需的软件包:
在MariaDB中,创建数据库
imdb
,并授予user
所有权限使用密码
密码
。获取 IMDbPY 6.2:
将 IMDb 数据加载到 MariaDB:
<前><代码>cd bin
python3 imdbpy2sql.py -d [imdb_dataset_directory] -u 'mysql://用户:密码@localhost/imdb'
编辑: IMDbPY 6.2 版本不会创建外键。请参阅此 GitHub 问题。如果需要创建外键,则需要使用旧版本的 IMDbPY,但也报告了旧版本中生成外键的问题(请参阅链接的 GitHub 问题)。
更新:导入花了 4.5 小时,而且我使用 InnoDB 表没有任何问题。
编辑:如果希望使用 IMDbPY 6.2 版本并需要外键,那么您需要在生成数据库后手动将它们添加到数据库中。在添加外键之前,需要对数据进行少量清理。 此 GitHub 问题。
Changes to IMDbPY and the IMDb data files format mean that the existing answers no longer work (as of January 2018).
I am using Ubuntu 17.10 and MariaDB 10.1 (not MySQL, but the following will also work with MySQL).
Changes to IMDbPY
The latest version of IMDbPY is 6.2, it is implemented in Python 3, and the dependencies on
gcc
andSQLObject
have been removed. Also, the Python packageMySQL-python
is not available for Python 3, so we installmysqlclient
instead; see below. (The API ofmysqlclient
is compatible withMySQL-python
.)Changes to the IMDb data files format
Changes to the format of the IMDb data files were introduced in December 2017, and IMDbPY 6.2 (the current version) does not yet work with the new file format. (See this GitHub issue.)
Until this is fixed, use the most recent version of the IMDd data published in the old format, which is available at ftp://ftp.fu-berlin.de/pub/misc/movies/database/frozendata/. Download all
*.list.gz
files (excluding files from subdirectories).New steps to follow
Install Python 3 and required packages:
In MariaDB, create a database
imdb
, and grant all privileges touser
with password
password
.Get IMDbPY 6.2:
Load IMDb data into MariaDB:
Edit: Version 6.2 of IMDbPY does not create foreign keys. See this GitHub issue. You will need to use an older version of IMDbPY if you need foreign keys to be created, but there are also reported issues with the generation of foreign keys in old versions too (see linked GitHub issue).
Update: It took 4.5 hours to import, and I had no problems using InnoDB tables.
Edit: If wish to use version 6.2 of IMDbPY and require foreign keys, then you will need to add them manually to the database after it is generated. A very small amount of cleanup of the data is required before foreign keys can be added. This cleanup and the foreign keys that need to be added are described in this GitHub issue.
在 ubuntu 上
1) 安装所有必需的软件包。
2)安装IMDBPY。
3)在mysql中,创建数据库“imdb”,并授予“user”所有权限,密码“password”。
4) 下载所有 IMDB 数据。
5)加载IMDB数据到mysql(使用myisam作为存储引擎)。
借用“导入 IMDb 数据集从纯文本文件到 MySQL 数据库”,并进行了一些小修复。
On ubuntu
1) Install all the required packages.
2) Install IMDBPY.
3) In mysql, create a database "imdb", and grant all privileges to "user" with password "password".
4) Download all IMDB data.
5) Load IMDB data to mysql (use myisam as the storage engine).
Borrowed from "Import IMDb Data Set from Plain Text Files To MySQL Database" with some minor fixes.
IMDB 客户端进行了更新,并添加了一些文档,使得其中一些内容已经过时。请参阅更新的文档了解最新信息。
There has been an update to the imdb client and some documentation added making some of this outdated. Refer to updated docs for the latest.