小编akm*_*991的帖子

Python requests.post 这么慢还是我做错了什么?

我是一名新的 Python 程序员,负责做一个简单的应用程序来进行 API 调用。它工作正常,但我对速度不满意。我已经在低速互联网连接和更快的互联网连接上尝试过它。平均而言,进行 API 调用所需的时间为 1.3 到 2.4 秒。我已经在 5mbps 到 80mbps 的互联网连接上进行了测试,两者都显示了相似的结果(加上负 0.5 秒的差异)。
 
在纸面上花费的时间看起来还不错,但是,当我检查进行调用的服务器时,处理时间仅为 0.2 - 0.5 秒左右,这意味着在请求过程中损失了 1 - 2 秒的时间过程。
 
这是我正在使用的代码:

import requests
import json
import time
import uuid
import requests.packages.urllib3

requests.packages.urllib3.disable_warnings() 

#get api call start time
startTime = time.time()

#make api call
r=requests.post(APIUrl, data=payload, headers=headers, verify=False)

#get api call finish time
endTime = time.time()

#calculate time taken
totalTimeTaken = str(float(round((endTime - startTime ),3)))

json_obj = r.json(strict=False)
print "Response: "+str(json_obj['response'])
print "Elapsed: "+str(r.elapsed)
print …
Run Code Online (Sandbox Code Playgroud)

python performance python-requests

5
推荐指数
1
解决办法
6173
查看次数

如何使用Flask-Socket IO从服务器向客户端发送消息

我正在尝试创建一个可以从服务器向客户端发送消息的python应用程序.目前我使用此示例代码在这里.这是一个聊天应用程序,它工作正常.我试图修改应用程序并在服务器端python代码中添加一个新函数,它将向客户端打印消息"Dummy",但似乎它不起作用.

这是我的HTML代码:

的index.html

<body>
    <ul id="messages"></ul>
    <ul id="output"></ul>
    <form action="">
      <input id="m" autocomplete="off" /><button>Send</button>
    </form>

<script src="{{url_for('static', filename='assets/vendor/socket.io.min.js')}}"></script>
<script src="{{url_for('static', filename='assets/vendor/jquery.js')}}"></script>

<script>
  var socket = io.connect('http://127.0.0.1:5000/chat');

  $('form').submit(function(){
    socket.emit('chat message', $('#m').val());
    $('#m').val('');
    return false;
  });

  socket.on('chat message', function(msg){
    $('#messages').html($('<li>').text(msg));
  });

  socket.on('output', function(msg){
    alert(msg)
    $('#messages').html($('<li>').text(msg));
  });
</script>
Run Code Online (Sandbox Code Playgroud)

这是我的后端代码:

web_app.py

from flask import Flask
from flask import render_template
from flask_socketio import SocketIO
from flask_socketio import emit

app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
connected = False

def socket_onload(json):
    socketio.emit('output', …
Run Code Online (Sandbox Code Playgroud)

python flask flask-socketio

2
推荐指数
2
解决办法
8392
查看次数