0
腳本必須從api獲取帖子並將其保存到數據庫中。腳本只能在第一次運行時正常工作
運行成功運行的腳本後,即使在另一個5-24 +小時內有新的帖子,它也將無法獲取新帖子。 它會在每秒鐘的小部分時間內返回相同的舊響應,例如它從緩存或其他東西運行。 (如果我刪除舊的帖子,它仍然將它們添加到數據庫)
有趣的是,如果我部署相同的腳本,它第一次運行正常,然後再次,我必須等待另一個5- 24小時以上。
如果它運行成功,則需要3-10秒,否則需要不到一秒。
我真的很困惑,有沒有像緩存響應?或者這可能是reddit api方面的問題?添加任何這些選項有幫助嗎?
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 100,
CURLOPT_TIMEOUT => 100
我目前使用的請求庫要求
r = requests.get(url, headers = {'User-agent': 'My App 12345'})
response = r.json()
這裏是我的腳本的GAE部分
class MainHandler(webapp2.RequestHandler):
def get(self):
# --------------- Database Connection ---------------
global db
global cursor
if os.getenv('SERVER_SOFTWARE', '').startswith('Google App Engine/'):
db = MySQLdb.connect(xxx)
else:
db = MySQLdb.connect(xxx)
cursor = db.cursor()
# ---------------------------------------------------
fetchFromReddit("") # Start fetching script
self.response.write("Finished !")
db.close()
cursor.close()
app = webapp2.WSGIApplication([
('/url', MainHandler)
], debug=True)