Я хочу развернуть свою программу очистки текста в Heroku, но используемый файл хранится на моем ПК - PullRequest
0 голосов
/ 09 октября 2019

Я создал программу очистки текста, в которой пользователь вводит слово, и он просматривает большой текстовый файл (250 МГ и больше) на моем компьютере, но теперь я хочу развернуть его через Heroku.

ЕстьЕсть ли обходной путь, который мне нужно реализовать или есть (довольно неуловимый) способ сделать это? Насколько я могу судить, я не могу загрузить свой текстовый файл в Heroku как есть.

1 Ответ

1 голос
/ 09 октября 2019

Вот мое предложение.

  1. Размещайте текстовый файл на таком сайте, как pastebin , если он не содержит конфиденциальной информации. Это позволяет вам свободно обновлять его без необходимости повторного развертывания приложения при каждом добавлении в него.
  2. После того, как вы загрузили / вставили текст в «вставку» и сохраните его, вы сможетечтобы получить «сырую» ссылку, которая будет возвращать содержимое файла по запросу.
  3. Используйте requests, чтобы получить файл из вашего приложения и проанализировать его, как вам нужно.

    import requests
    resp = requests.get("https://pastebin.com/raw/LjcPg3UL")
    # if all entries are on individual lines
    mywords = [word for word in resp.iter_lines()]
    # if comma-separated or otherwise
    #mywords = resp.text.split(",")
    

Теперь у вас есть все содержимое в списке для работы в приложении.

Редактировать:
Поскольку выесли вы хотите сделать это с более крупными файлами, вы можете разместить файл в Dropbox и следовать инструкциям здесь , чтобы получить необработанную ссылку. Однако, если вы имеете дело с таким большим файлом, вы заметите значительные накладные расходы. Если размер файла будет таким большим, я бы предложил использовать дополнительную меру предосторожности, используя параметр requests stream ( details ), поэтому строка запроса становится

resp = requests.get("https://www.dropbox.com/s/FILE_ID/filename.extension?raw=1", stream=True)

Это будет читать куски файла вместо чтения всего файла сразу, что поможет сократить потребление памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...