Ich bin vielleicht voreingenommen aber ich würde sagen, Sie sind auf dem richtigen Weg!
Es klingt wie Sie wollen, dass Menschen in der Lage, eine CSV hochladen, dann wird Ihre Web-App es verarbeiten und die Ergebnisse ausgeben? Wenn ja, überprüfen Sie die Django-Dokumentation aus:
https://docs.djangoproject.com/en/1.3/topics/http/file-uploads/
Nichts zu kompliziert, wenn Sie ein Django Form-Objekt mit einem FileField
gemäß dem Beispiel erstellen.
from django import forms
class UploadFileForm(forms.Form):
file = forms.FileField()
Sie setzten es dann in Ihre Webseite oder eine Vorlage, einschließlich der korrekten enctype
:
<form enctype="multipart/form-data" method="post" action="/foo/">
{{form.as_p}}
</form>
Schließlich geht man mit ihm in der Ansicht, dass die Post behandelt (mit der URL aus dem Formular action):
def handle_csv_upload(request):
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
results = do_my_csv_magic(request.FILES['file'])
# now eg save the results to the database, and show them to the user
db_entry = MyCSVResults(results=results)
db_entry.save()
# it's good practice to use a redirect after any POST request:
return HttpResponseRedirect('/show_results/%d/' % db_entry.id)
Abgesehen davon ist bei PythonAnywhere keine spezielle Konfiguration erforderlich. Die Datei wird (vorübergehend) nach/tmp gespeichert, was gut funktioniert. Wenn Sie die Datei für später speichern möchten, müssen Sie dazu Code hinzufügen.
Hoffe, dass hilft. Wir sind hier, wenn Sie weitere Fragen haben!
Ihre Frage ist ein wenig zu vage. Es ist nicht klar, was eine wünschenswerte Antwort wäre. Sie möchten wahrscheinlich Django ausprobieren, aber pythonanywhere ist wahrscheinlich nicht der richtige Ort, um den Webserver zu betreiben. – jterrace
das könnte helfen: https://scraperwiki.com/ –
Wenn Sie pythonanywhere verwenden, würde ich sagen, Sie sind. Sie sollten dieses Tag hinzufügen, jemand von der Website kommt vorbei und gibt Ihnen mehr Ratschläge und Tipps. – Droogans