CentOs进行AKShare HTTP 部署并供外网IP调用

需求背景

周末闲聊之时,看了akshare的官方文档,之前都是通过python程序去调用数据,作为一个java开发者,我觉得甚是不太方便。认真看了一下文档,是我失敬了。大佬已经推出了aktools工具,这样就可以通过http请求调用大多数的接口,我们只有部署一个aktools即可,后面通过接口名即可灵活处理数据。官方文档非常简单

前提

需要提前安装好python的相关环境,这里看官们自行搜索,不在这里赘述

进入正题

  • 安装aktools
pip install aktools
  • 运行 aktools
python -m aktools

环境没有问题的情况下,运行之后会显示类似如下效果


运行之后,一般你不设置具体的运行IP和端口,默认就是运行在本地环境的8080端口下,这样外网就无法访问

设置外网可以访问

python -m aktools --host 你的IP --port 你的端口号

注意,用阿里云的centos的话,这里IP需要用对应的内网IP

开放端口,供外网访问

1、开启防火墙
systemctl start firewalld

2、开放指定端口
firewall-cmd --zone=public --add-port=1935/tcp --permanent
命令含义:
--zone #作用域
--add-port=1935/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效

3、重启防火墙
firewall-cmd --reload

4、查看端口号
netstat -ntlp //查看当前所有tcp端口·

netstat -ntulp |grep 1935 //查看所有1935端口使用情况

阿里云安全组也需要开放对应的端口号

这个自行百度,一般玩云服务器的都知道在哪里

关闭终端之后,程序会终止

  • 应对措施
    需要在后台运行的话,写一个脚本,脚本格式为xxx.sh,内容如下:
python -m aktools --host 你的IP --port 你的端口号 &

变化就是在后面添加一个 &

运行脚本

进入到脚本目录,执行如下命令即可,这样关闭终端就不影响程序继续运行

sh xxx.sh

写在最后

这个对于akshare感兴趣的铁子们可以动手试一下,数据在自己手里,才能灵活分析。这里是"安前码后",一个专注分享实用内容的号,欢迎三连,后续继续推出搞钱的内容,技术不是天花板,搞钱才是王道。

你可能感兴趣的:(python,后端)