logo头像

Hello World

Django安装部署

前言

近期在做个一个分布式爬虫项目,欲使用Django做爬虫的控制和数据展示。

因此本文将记录在安装编写Django应用时遇到的坑。

本文环境为Python2.7+Django1.11.10+Mariadb10.2.7

安装

  1. 查看是否安装Django

    1
    python -c "import django; print(django.get_version())"

    如果有版本号输出,说明已经安装过了,安装步骤就可以跳过。

    如果没有则 pip 进行安装

  2. 安装

    1
    pip install django

    再次使用django.get_version()查看版本信息

    1
    2
    3
    user@Joe MINGW64 /d/PythonWorkSpace/wikiCrawler
    $ python -c "import django; print(django.get_version())"
    1.11.10

    安装成功

  3. 新建数据库

    本文默认在安装好Mariadb10.2.7的情况下。首先新建一个数据库。

    1
    create database crawler
  4. 创建Django项目

    切换至你想要存放代码的目录,执行如下命令创建Django项目

    crawler可以改成你的项目名称

    1
    django-admin startproject crawler

    创建完毕后可以看到如下目录文件结构

    1
    2
    3
    4
    5
    6
    7
    mysite/
    manage.py
    crawler/
    __init__.py
    settings.py
    urls.py
    wsgi.py
  5. 修改yourProject/setting.py配置

    • 配置中国时区和语言

      1
      2
      LANGUAGE_CODE = 'zh-hans'
      TIME_ZONE = 'Asia/Shanghai'
    • 配置数据库

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      DATABASES = {
      'default': {
      'ENGINE': 'django.db.backends.mysql',
      'NAME': 'DB_NAME',
      'USER': 'DB_USER',
      'PASSWORD': 'DB_PASS',
      'HOST': '127.0.0.1',
      'PORT': '3306',
      }
      }
  6. 安装Mysql-python驱动

    在使用pip-install mysql-python的时候,发现这个驱动依赖于VC++9.0
    安装报错

    1
    2
    building '_mysql' extension
    error: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27

    http://aka.ms/vcpython27 下载相应库。发现还是编译错误。。

    最后还是到官网下载 安装包进行下载。
    https://pypi.python.org/pypi/MySQL-python/
    此时报错消失,成功解决了。

  7. migrate 导入数据库

    切换到manage.py所在目录 执行如下命令。

    1
    python manage.py migrate

    提示如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     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

自此Django+MariaDB连接成功。

文档资料参考

http://python.usyiyi.cn/documents/django_182/index.html
https://docs.djangoproject.com/en/2.0/

上一篇