在Django视图中执行Python脚本[上传CSV - >批量地理编码 - >通过脚本生成的CSV显示下载链接]

问题描述 投票:1回答:1

在Googleing时我发现了以下非常有用的脚本:https://github.com/shanealynn/python_batch_geocode/blob/master/python_batch_geocoding.py

这个脚本正是我需要的,当我在我的计算机上本地运行时,它可以完美运行。我有一个小的Django站点,我想使用这个脚本(非商业)。我不需要一个完整的代码示例(即使有人有示例代码,只是发布它,我会得到它),而是采取使用这样的脚本的步骤。关于这最后几天我搜索了很多,并得到了很多不同的答案和不同的场景。但是,它们并非完全适用于这种情况:

  1. 上传CSV
  2. 运行脚本
  3. 创建新建CSV的链接/制作下载

是否有人可以帮助我?

在此先感谢您的问候

编辑:这是我到现在为止所采取的步骤和代码:

我几乎遵循以下教程:https://docs.djangoproject.com/en/2.1/topics/http/file-uploads/

这是我的片段:

forms.朋友

class UploadFileForm(forms.Form): title = forms.CharField(max_length=50) file = forms.FileField()

views.朋友

def geocode(request):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            handle_uploaded_file(request.FILES['file'])
            return HttpResponseRedirect('/success/url/')
    else:
        form = UploadFileForm()
    return render(request, '../templates/data/geocode/index.html', {'form': form})

URLs.朋友

urlpatterns = [
...
path('geocode', views.geocode, name='geocode')]

显示文件上传,我可以选择一个文件。这是我不知道该怎么做的一步。我是否需要将其保存在我的数据库中,还是可以将其加载到脚本中?

python django csv geocoding
1个回答
1
投票

您可以在django项目目录中放置python脚本,并在上传文件后执行python脚本,如qazxsw poi所述

© www.soinside.com 2019 - 2024. All rights reserved.