Directorio de artículos
Fuente del proyecto: "Sistemas prácticos de recomendación; Kim Falk; enero de 2019"
Dirección de origen: Prácticos sistemas de recomendación
Esta publicación de blog solo registra cómo crear un sistema de recomendación de películas. Para obtener más información, consulte cómo crear un sitio web completo del sistema de recomendación de películas a partir de 0.
1. Crea un nuevo entorno virtual
-
Descarga el proyecto correspondiente de github
-
Abra la carpeta moviegeek-master después de la descarga y abra el mensaje Anaconda en la carpeta
conda create -n prs
conda activate prs
-
Instale las bibliotecas requeridas por el proyecto Requirements.txt contiene todas las bibliotecas dependientes y las versiones correspondientes requeridas por el proyecto.
pip install -r requirements.txt
2. Configuración de la base de datos
2.1 Instalar PostGreSQL
-
En aquí Descargar Para PostgreSQL versión correcta de su sistema operativo, a continuación, instalar y ejecutar de acuerdo a las instrucciones de la página de descarga.
-
Descomprima el paquete comprimido y configure las variables de entorno
-
Primero
D:\pgsql
, cree una carpeta llamada datos en la carpeta pgsql ( ) (esta es la carpeta de almacenamiento de datos de la base de datos) -
Luego cree un nuevo archivo llamado env.vbs en la carpeta pgsql y ejecute el script
on error resume next set sysenv=CreateObject("WScript.Shell").Environment("system") 'system environment array Path = CreateObject("Scripting.FileSystemObject").GetFolder(".").Path 'add variable sysenv("PGHOME")="D:\pgsql" sysenv("PGHOST")="localhost" sysenv("Path")=sysenv("PGHOME")+"\bin;"+sysenv("Path") sysenv("PGLIB")=sysenv("PGHOME")+"\lib" sysenv("PGDATA")=sysenv("PGHOME")+"\data" wscript.echo "PostgreSQL Success"
-
Ingrese al directorio bin, abra un símbolo del sistema como administrador y ejecute el siguiente comando
# 初始化数据库 initdb.exe -D D:\pgsql\data -E UTF-8 --locale=chs -U postgres -W # 启动数据库 pg_ctl -D D:\pgsql\logfile -l logfile start # 注册服务 pg_ctl register -N PostgreSQL -D D:\pgsql\data
-
En
D:\pgsql\pgAdmin 4\bin
caso de que exista pgAdmin4.exe, haga doble clic para abrir
2.2 Crea una base de datos para MovieGEEK
Utilice la herramienta de administración pgadmin de PostGreSQL para crear una base de datos. Nómbralo moviegeek
. Anote el nombre de usuario y la contraseña que utilizó para crear la base de datos. A partir de ahora, cuando cambie la configuración de Django, esta información se utilizará en dos pasos
Tenga en cuenta que primero debe verificar si el servicio PostGreSQL se inició antes de crear la base de datos. Si no se inicia, debe iniciarlo primero, de lo contrario no podrá conectarse
2.3 Instalar el controlador de la base de datos de Python
Después de rotar la base de datos PostGreSQL, es hora de usar el controlador Python, que permite que Django se comunique con la base de datos. Recomiendo usar Psycopg . Descárgalo aquí . Siga las instrucciones a continuación para instalarlo.
requirements.txt
Ya configurado desde el principio
2.4 Configurar la conexión de la base de datos Django para conectarse a PostGreSql
Si usa PostGreSQL (u otras bases de datos), necesita configurar una conexión de base de datos Django para MovieGEEKS, siga los pasos a continuación. Si necesita más detalles, consulte la documentación de Django aquí.
encender moviegeek-master/prs_project/settings.py
Actualice lo siguiente:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'moviegeek',
'USER': 'db_user',
'PASSWORD': 'db_user_password',
'HOST': 'db_host',
'PORT': 'db_port_number',
}
}
Actualice los campos USER, PASSWORD, HOST y PORT:
- USUARIO (db_user): el nombre de usuario creado por la base de datos MovieGEEK
- PASSWORD (db_user_password): la contraseña creada por la base de datos MovieGEEK
- Host (db_host): host local (si se ha instalado en una computadora privada)
- PUERTO (db_port_number): 5432 (puerto predeterminado)
Para obtener más información, consulte el enlace de documentación de Django
2.5 Crear y completar la base de datos MovieGEEKS
-
Crear base de datos
python manage.py makemigrations python manage.py migrate --run-syncdb
-
Rellenar la base de datos
Ejecute el siguiente script para descargar el conjunto de datos del sitio web de MovieGEEKS.
Advertencia: los usuarios de Mac que ejecutan Python 3.7 o superior deben ejecutar este comando antes de completar la base de datos.
/Applications/Python\ 3.7/Install\ Certificates.command
. Más detalles aquí y aquí .Procesar primero la información de la película
python populate_moviegeek.py python populate_ratings.py
A veces, la conexión informará de un error, solo inténtelo unas cuantas veces más. . . .
3. Solicite la API de TMDB
Debe crear una identificación con themoviedb.org para usar sus imágenes.
-
Vaya a https://www.themoviedb.org/account/signup
-
registrado
-
Inicie sesión, vaya a la configuración de su cuenta y cree una API . Puede acceder a la configuración haciendo clic en el avatar en la esquina superior derecha (el valor predeterminado es un círculo azul con un logotipo blanco). Luego verá la configuración a la izquierda.
-
Cree un archivo llamado ".prs" en el directorio moviegeek
-
Abra .prs y agregue {"themoviedb_apikey":} Recuerde eliminar "<" y ">". Después de terminar, el contenido del archivo debe ser similar a {"themoviedb_apikey": "6d88c9a24b1bc9a60b374d3fe2cd92ac"}
4. Inicie el servidor web
Para iniciar el servidor de desarrollo, ejecute el siguiente comando:
python manage.py runserver 127.0.0.1:8000
Ejecutar el servidor de esta manera hará que el sitio web esté disponible http://127.0.0.1:8000