使用 pandas 和 Google App Engine 时出现 AttributeError

AttributeError when using pandas and Google App Engine

我了解未包含 Pandas,并且相信我已通过将模块添加到应用程序的 lib 目录并添加

来正确包含该库
from google.appengine.ext import vendor
vendor.add('lib')

appengine_config.py - 其他模块似乎没有问题。

当我 运行 我的应用程序时,显示以下堆栈跟踪:

ERROR 2016-12-15 23:05:31,038 app.py:1587] Exception on / [GET]

Traceback (most recent call last):
File ".../PycharmProjects/fpl-flask-app/lib/flask/app.py", line 1988, in wsgi_app
  response = self.full_dispatch_request()
File ".../PycharmProjects/fpl-flask-app/lib/flask/app.py", line 1641, in full_dispatch_request
  rv = self.handle_user_exception(e)
File ".../PycharmProjects/fpl-flask-app/lib/flask/app.py", line 1544, in handle_user_exception
  reraise(exc_type, exc_value, tb)
File ".../PycharmProjects/fpl-flask-app/lib/flask/app.py", line 1639, in full_dispatch_request
  rv = self.dispatch_request()
File ".../PycharmProjects/fpl-flask-app/lib/flask/app.py", line 1625, in dispatch_request
  return self.view_functionsrule.endpoint
File ".../PycharmProjects/fpl-flask-app/main.py", line 13, in index
  datar = pandas.read_sql('SELECT p.nationality, SUM(s.mins_played) AS mins_played
  FROM CurrentSeasonStats s left join Player p ON s.Player_pid = p.pid GROUP BY
  p.nationality', con)

AttributeError: 'module' object has no attribute 'read_sql'**


这是我的代码:

from flask import Flask, request, render_template
import pandas
from sqlalchemy import create_engine
import pymysql

import random

app = Flask(__name__)

@app.route('/')
def index():
    con = create_engine('mysql+pymysql://user:pass@ix.cs.uoregon.edu:port/fpl', echo=False)
    datar = pandas.read_sql('SELECT p.nationality, SUM(s.mins_played) AS mins_played FROM CurrentSeasonStats s left join Player p ON s.Player_pid = p.pid GROUP BY p.nationality', con)
    return render_template('index.html', table=datar)

if __name__ == '__main__':
    app.run()

有什么想法吗?

我 copy-pasted 将 pandas 库的二进制骨架版本放入 /lib/,这就是 pandas 函数中的 none 起作用的原因。

这是我没有使用虚拟环境的直接而恼人的结果...

使用虚拟环境,孩子们!