精选文章 python数据分析案例1:股票数据分析(二):配置Python + Django 开启http接口访问功能

python数据分析案例1:股票数据分析(二):配置Python + Django 开启http接口访问功能

作者:childboi 时间: 2020-08-05 10:43:48
childboi 2020-08-05 10:43:48

转载自https://www.jianshu.com/p/48394798d29f

前言:

在前面(一)文章中创建好了一个Python项目, 暂时不对Python功能做深入研究,
本文优先介绍Python + Django 开启http接口访问功能, 提供一个接口共外部访问是整个流程不可或缺的部分,为我后面开发前端或PC, 移动等提供接口服务.

Django : 简单介绍就是, 一个web框架,能够为http访问 和 Python直接搭建桥梁.当然还有其他选择,这里不做介绍.

  • 在进行上一篇文章安装环境之后, 我们开始进行下面操作 :

Django 安装 :

比较详细的菜鸟Django安装介绍,
其中包括:

我以Mac简单介绍:

Django下载地址1: https://www.djangoproject.com/download/
Github 上下载最新版,地址:https://github.com/django/django

下面我是https://www.djangoproject.com/download/这里下载的:
页面右侧:

python数据分析案例1:股票数据分析(二):配置Python + Django 开启http接口访问功能1

图片.png

 

下载Django-1.10.8.tar.gz成功后:(Mac下默认是/Users/xxx/Downloads,xxx是你的用户名)

安装

 

进入下载目录解压:
cd /Users/niexiaobo/Downloads
tar zxvf Django-1.10.8.tar.gz

进入解压后的目录:
cd Django-1.10.8
sudo python setup.py install

(安装需要输入电脑密码)

安装成功后会输出以下信息:

 

...
....
creating /anaconda3/lib/python3.6/site-packages/Django-1.10.8-py3.6.egg
Extracting Django-1.10.8-py3.6.egg to /anaconda3/lib/python3.6/site-packages
Adding Django 1.10.8 to easy-install.pth file
Installing django-admin.py script to /anaconda3/bin
Installing django-admin script to /anaconda3/bin

Installed /anaconda3/lib/python3.6/site-packages/Django-1.10.8-py3.6.egg
Processing dependencies for Django==1.10.8
Finished processing dependencies for Django==1.10.8

其中
creating /anaconda3/lib/python3.6/site-packages/Django-1.10.8-py3.6.egg
是安装目录,因为我安装了anaconda管理,默认在这里.

再进入我们的站点目录(上一篇文章创建的项目路径),创建 Django 项目:

 

进入我的站点目录:
cd /Users/niexiaobo/Documents/PythonFile/stockTuSharePro 
创建 Django 项目
django-admin.py startproject djangoManager
cd djangoManager
启动服务:
python manage.py runserver

显示:

 

...
SyntaxError: invalid syntax
Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

June 05, 2018 - 03:00:38
Django version 1.10.8, using settings 'djangoManager.settings'
Starting development server at http://127.0.0.1:8000/

其中有一段错误提示:
话说这个migrate是干什么的呢,它可以让我们在修改Model后可以在不影响现有数据的前提下重建表结构。执行后目录下面多了一个文件dg.sqlite3

 

...
Run 'python manage.py migrate' to apply them.

按照提示要求control + c退出后,执行python 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

再启动服务:
python manage.py runserver
结果:

 

System check identified no issues (0 silenced).
June 05, 2018 - 03:08:02
Django version 1.10.8, using settings 'djangoManager.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

以上信息说明,项目已启动,访问地址为http://127.0.0.1:8000/。

在浏览器打开http://127.0.0.1:8000/ 下面显示说明成功:

python数据分析案例1:股票数据分析(二):配置Python + Django 开启http接口访问功能2

图片.png

接下来我们要开始创建第一个可访问接口

进入pycharm项目中的djangoManager文件夹里,创业一个view.py的Python文件,
编辑

 


from django.http import HttpResponse
 
def hello(request):
    return HttpResponse("Hello world ! ")

同时发现项目自动创建好了一些文件,目录说明:

 

    HelloWorld: 项目的容器。
    manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
    HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
    HelloWorld/settings.py: 该 Django 项目的设置/配置。
    HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
    HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

修改urls.py文件(默认里面有一些信息, 情况删除), 复制下面信息到urls.py里:

 


from django.conf.urls import url
 
from . import view
 
urlpatterns = [
    url(r'^$', view.hello),
]

本人出现from django找不到模块的情况,关闭项目重新打开,pycharm会更新链接.
在当前项目目录下重新启动: python manage.py runserver 0.0.0.0:8000
注意:不是当前项目目录下时,需要指定manage.py的绝对路径.
0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号。如果不说明,那么端口号默认为 8000。

编辑目录下setting.py ,把其中的

 

ALLOWED_HOSTS=[]改成ALLOWED_HOSTS=['*'] ##* 表示任意地址。

访问地址为http://127.0.0.1:8000 (注意不是***8000/view)

python数据分析案例1:股票数据分析(二):配置Python + Django 开启http接口访问功能3

图片.png


 

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:SAP 系统上线前的思考

下一篇:Python——魔法方法:描述符(Property的原理)

您可能感兴趣

  • 从开始到新的开始----架构演进

    1. 概述 以淘宝为例,讲解java架构演进。 2. 基本概念 3. 架构演进 3.1 单机架构 以淘宝作为例子。在网站最初时,应用数量与用户数都较少,可以把Tomcat和数据库部署在同一台服务器上。浏览器往www.taobao.com发起请求时,首先经过DNS服务器(域名系统)把域名转换为实际IP地址10.102.4.1,浏览器转而访问该IP对应的Tomcat。 随着用户数的增长,Tomc...

  • Java十大框架

    十大常用框架: 一、SpringMVC 二、Spring 三、Mybatis 四、Dubbo 五、Maven 六、RabbitMQ 七、Log4j 八、Ehcache 九、Redis 十、Shiro 延展阅读: 一、SpringMVC Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责...

  • 深入探讨 Python 的 import 机制:实现远程导入模块

    所谓的模块导入,是指在一个模块中使用另一个模块的代码的操作,它有利于代码的复用。 也许你看到这个标题,会说我怎么会发这么基础的文章? 与此相反。恰恰我觉得这篇文章的内容可以算是 Python 的进阶技能,会深入地探讨并以真实案例讲解 Python import Hook 的知识点。 当然为了使文章更系统、全面,前面会有小篇幅讲解基础知识点,但请你有耐心的往后读下去,因为后面才是本篇文章的精华...

  • SLA 99.99%以上!饿了么实时计算平台3年演进历程

    http://www.dataguru.cn/article-13319-1.html 作者介绍 倪增光,饿了么BDI-大数据平台研发高级技术经理,曾先后就职于PPTV、唯品会。15年加入饿了么,组建数据架构team,整体负责离线平台、实时平台、平台工具的开发和运维,先后经历了唯品会、饿了么数据平台从无到有到不断完善的过程。 一、背景 饿了么BDI-大数据平台研发团队目前共有20人左右,主要...

  • KVM详解,教科书般的经典讲解

    KVM 介绍(1):简介及安装 http://www.cnblogs.com/sammyliu/p/4543110.html 学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分配和 SR-IOV (5)libvirt 介绍 (6)Nova 通过...

  • 揭秘云计算

    单选题 1、单选-云计算的一大特征是(),没有高效的网络云计算就什么都不是,就不能提供很好的使用体验 按需自助服务 无处不在的网络接入 资源池化 快速弹性伸缩 2、单选-要使端口组到达其他VLAN上的端口组,必须将VLAN ID设置为() A、80 B、4095 C、8080 D、3306 3、单选-对于公有边缘节点,通常以()的形式部署于() 小型数据中心,地市及以下的自有机房 大型数据中...

  • 别再吐槽了,12306 的架构到底有多牛逼?

    链接: 绘你一世倾城 来源:httpjuejin.im/post/5d84e21f6fb9a06ac8248149 每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:抢火车票! 12306 抢票,极限并发带来的思考 虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。 尤其是春节期间,大家不仅使用 12306,还会考虑“智行”和其他的抢票软件,全国...

  • Mongo常用操作汇总

    什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文...

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。