姜戈 - 管理命令 - 熊猫read_csv - 本地主机工作 - 希罗库



这个月我似乎遇到了独特的情况。

我需要从 Web 读取文件更新数据库

我采取了两种方法:

方法1.

从应用程序本身上传值 - 这可能很耗时,我可以遇到工人超时 - 但是,我保留了这种方法 - 因为它目前需要 27-29 秒。Heroku 超时为 30 秒。

方法2.

从 Django 命令管理上传值。我已经通过 Heroku 安排了一份工作。

我使用熊猫 - pd.read_csv文件在两种方法中从网络上读取文件。

场景 1:

如果我使用方法 1

本地主机:它工作正常

希罗库:工作正常

场景 2 :

如果我使用方法 2

本地主机:它工作正常

Heroku:HTTP 503错误,无法读取文件

对此的解决方案是什么?

附言 - 我计划提出请求并添加浏览器标头并更新此线程。

找到答案,我将在明天 Heroku 作业运行时确认这一点。

编辑:作业工作正常,所有数据都已更新。你必须假装它:

已编辑- 第二次编辑,第二天就失败了。我正在考虑生成更多的假标题,并将发布更新。

from zipfile import BadZipFile, ZipFile
import datetime
import pandas as pd
import logging
import requests,zipfile
import io
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
r = requests.get(url,headers=headers)
logger.info("Status code = ",r.status_code)
if r.status_code == 200:
logger.info(" Request ran successfully ")
file = zipfile.ZipFile(io.BytesIO(r.content))
myfile = file.open(filename)
stock_prices = pd.read_csv(myfile)
print(stock_prices)

相关内容

最新更新