gpt4 book ai didi

python - 属性 lat 必须是显示在我的仪表板中的 float

转载 作者:行者123 更新时间:2023-12-01 06:11:34 25 4
gpt4 key购买 nike

我创建了一个 Google AppEngine 项目,它接收 .txt 文件,查找文件中的位置,并使用 Yahoo Placemaker 在 map 上绘制一个标记来表示 .txt 文件。当我在本地主机上运行时,该项目工作正常,但当我尝试将其上传到 appspot 时,出现错误:

BadValueError: Property lat must be a float

我的 main.py 看起来像这样:

class Story(db.Model):
id = db.StringProperty()
loc_name = db.StringProperty()
title = db.StringProperty()
lat = db.FloatProperty()
long = db.FloatProperty()
link = db.StringProperty()

class MyStories(webapp.RequestHandler):
def get(self):
temp = db.Query(Story)
temp = temp.count()


story_set = Story.all()

template_values = {
'storyTemp': story_set
}

path = os.path.join(os.path.dirname(__file__), 'index.html')
self.response.out.write(template.render(path, template_values))

class place(webapp.RequestHandler):
def get(self):
path = '/Users/kimmasterson/storing/txtFiles'

try:
for infile in glob.glob(os.path.join(path, '*.txt')):
#print infile
f = open(infile, 'r')
data = f.read()
newfile = infile.replace('.txt', '')
newfile = newfile.replace('/Users/kimmasterson/storing/txtFiles/', '')
#print newfile
storyname = 'http://www.independent.ie/national-news/' + newfile
#print storyname
#print newfile
#logging.info(data)
p = placemaker('HSnG9pPV34EUBcexz.tDYuSrZ8Hnp.LowswI7TxreF8sXrdpVyVIKB4uPGXBYOA9VjjF1Ca42ipd_KhdJsKYjI5cXRo0eJM-')
print p.find_places(data)
for place in p.places:
splitted = place.name.split()
for word in splitted:
temp = db.Query(Story)
temp = temp.filter("link = ", storyname)
results = temp.fetch(limit=1)
if len(results) >0:
break
elif 'IE' in word:
print temp
print 'success'
story = Story(name=newfile, lat=place.centroid.latitude, long=place.centroid.longitude, link=storyname, loc_name = place.name, title = newfile).put()
except:
print 'error'
logging.info('BIG FAT ERROR')

def main():
application = webapp.WSGIApplication([('/', MyStories), ('/place', place)],
debug=True)

wsgiref.handlers.CGIHandler().run(application)


if __name__ == '__main__':
main()

我的 cron.yaml:

cron:
- description: running place

url: /place

schedule: every day 10:00

出于某种原因,它添加了地点并将文件链接到我的本地主机上的 map 。任何想法如何两个地方的相同代码可以在一个地方工作而不能在另一个地方工作?

最佳答案

  1. 非常明显的:path = '/Users/kimmasterson/storing/txtFiles' - 我希望您不要将其完全上传到 Appengine,因为显然这不起作用远程服务器。

  2. 如果打印出有关地点的一些详细信息,在错误发生之前您会得到什么?

编辑:

看看您想要做什么,我认为您实际上不需要上传文本文件。您正在尝试从 Independent.ie 网站上的故事中获取位置,对吧?您只需将 URL 传递给占位符即可:

p.find_places("http://www.independent.ie/national-news/patient-too-large-for-ambulance-2619414.html")

雅虎将直接从 Independent.ie 获取页面,而不是从您的应用程序发送页面。

关于python - 属性 lat 必须是显示在我的仪表板中的 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5647706/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com