用Python的Django在本地环境中准备Line Bot应用的方式,以世界上最易懂的方式进行解释(第2部分)
首先
上次我们创建了一个用于Line Bot的账户。
从这次开始,我们将正式构建Line Bot的系统。
为了构建Line Bot系统,我经常看到用PHP编写的解释文章,但这次我们将使用Python进行系统构建。
原因是,我们计划使用Python进行自然语言处理,分析Line Bot的对话,并对其进行最佳回答。而Python在自然语言处理方面有丰富的库。
然后,我们将使用最具代表性的Python Web框架之一“Django(简称为“吉普”)”来创建一个适用于机器人的应用程序。
如果你已经有制作Django或其他Web应用程序的经验,你可以按照这个步骤继续进行,没有问题。但是,对于初学者或希望了解Django使用方法的人来说,我之前写的解说文章非常易懂,请务必参考一下。
开发环境就是指为软件开发而准备的工具和资源。
-
- OS: Mac OS Sierra (10.12)
-
- Python 3.5.2
- Django 1.10.3 ※ この後インストールします
我們將基於Mac的環境進行討論。
以下是Python的版本确认:
$ python3 --version
Python 3.5.2
$ pip3 install django==1.10.3
$ python3
Python 3.5.2 (default, Jun 29 2016, 13:43:58)
[GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.get_version()
'1.10.3'
创建一个用于 Line Bot 的 API 项目。
首先,我们需要创建用于进行Python项目的最大框架的API所需的Python虚拟环境(Virtual Environment)。
$ python3 -m venv api
然后,在这里创建一个项目。
同样将其命名为api。
$ cd api
$ django-admin startproject api .
这样虚拟环境就建立成功了吧。
创建了一个名为api的目录,目录结构如下。
$ tree -L 2 api
api
├── api
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── bin
├── include
├── lib
├── manage.py
└── pyvenv.cfg
创建Django应用程序
我们要在这个API项目中创建一个叫做linebot的应用程序。
首先,安装Python的web框架Django。
我们将使用当前最新版本的Django,即1.10.3。
然后,我们将在此 API 项目中创建linebot的应用程序。
$ cd api
$ django-admin startapp linebot .
$ tree -L 1 .
api
├── api
├── bin
├── include
├── lib
├── linebot
├── manage.py
└── pyvenv.cfg
创建Django应用程序后的配置
创建应用程序后,需要进行各种设置,但在此,我们只介绍最基本的必需设置。
# Application definition
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'linebot', # 追加
)
# タイムゾーンの変更
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'
USE_TZ = False # DefaultではUTCのタイムゾーンのため False に変更
数据库(SQLite)的配置
进行数据库的设置。
这次我们将使用特定的初始设置并保持SQLite无修改。
$ python3 manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying sessions.0001_initial... OK
服务器的启动
首先,在本地启动服务器,确认初始化设置的网页是否显示出来。
$ python3 manage.py runserver
Performing system checks...
System check identified no issues (0 silenced).
November 12, 2016 - 13:04:05
Django version 1.10.3, using settings 'linebot.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
一旦web服务器启动,就可以通过浏览器访问http://127.0.0.1:8000/。
总结
这样,本地的开发环境已经准备好了。
只有将Line Bot的Web应用程序放置在远程服务器上,而不是在本地环境中,才能使其运行。因此,下一步我们将解释如何将此应用程序同步到服务器上。
下一篇解说文章
用中文以尽可能易懂的方式解释如何创建LINE BOT(第三部分)【与服务器的Git协作】
赠品
期待你的关注!
-
- Qiita: Carat 吉崎
twitter:@carat_yoshizaki
はてなブログ:Carat COOのブログ
ホームページ:Carat
如果您对机器学习的一对一家庭教师服务“キカガク”感兴趣,能够在“数学→编程→Web应用程序”等领域一次性学习,请随时与我们联系。