我尝试仅通过库执行我的script.py througth appengine时遇到问题“从google.cloud导入bigquery”,我尝试了一些解决方案,但还没有成功的方法,我向您展示了我用来执行此脚本的脚本。
这是我的脚本:
import json
import datetime
import webapp2
from google.cloud import bigquery
from google.appengine.ext import vendor
vendor.add('lib')
filename = "example.json"
def date_format(time):
if time.find(".") != -1:
time = time[:time.find(".")]
date = datetime.datetime.strptime(time,"%Y-%m-%d %H:%M:%S")
return date.strftime("%Y%m%d")
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
with open(filename) as file:
array = []
jsonData = json.load(file)
d = str(date_format(jsonData['e']))
self.response.write('Hello AppEngine from script! :: '+d)
client = bigquery.Client()
QUERY = (
'SELECT field FROM `table` WHERE date='+d+' LIMIT 10'
)
query_job = client.query(QUERY)
rows = query_job.result()
for row in rows:
print(row.field)
app = webapp2.WSGIApplication([
('/', MainPage),
], debug=True)
这是我的app.yaml:
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: main.app
这是我的要求。txt:
google-api-python-client
google-cloud
我有一个带有bigquery库的lib目录:google_cloud_bigquery-1.24.0.dist-info。和其他带有google_cloud的库
我不知道我的代码是否正确,因为我已经看到了一些解决方案,但没有任何可通过appengine运行脚本的帮助程序。
我希望你能帮助我。
google-cloud
软件包已被弃用,您应该将其卸载并安装google-cloud
。