Seite 1 von 1
virtuelle Datei
Verfasst: Montag 2. August 2010, 09:34
von Sync32
Hallo.
Ich habe eine kleine Schleife, die ein paar Dinge von einer Webseite speichert.
Nun forstet er die Website von oben nach unten durch und speichert meine Sachen.
Er speichert aber noch einige Sachen doppelt und dreifach ab (ist ja ganz klar, ein Icon z.B. wird ja mehrmals benutzt). Nun möchte ich immer stets vergleichen, ob er den Pfad/Link bereits kennt.
Wollte das eigentlich wie folgt lösen:
- .txt Datei erstellen
- Pfade/Links reinschreiben und jedes mal vergleichen, ob es den gleichen Link in der temprären .txt schon gibt. Wenn ja, überspringen!
- Am Ende der Funktion die Datei löschen.
Wollte nun fragen, ob Python sowas schon irgendwie mitbringt und automatisch temporäre Dateien erstellt und anschließend wieder löscht.
Wenn ja, wie nennt sich sowas?
Ps.
Achja btw:
Kenn wer nen guten Free-Webspace mit Python 2.6 drauf?
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 09:39
von EyDu
Hallo.
Warum denn der Umweg über Dateien?
Eine Suche nach "python temporary files" hilft übrigens ungemein
Sebastian
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 10:17
von ms4py
Warum speicherst du das nicht einfach im Memory mit einem `set`?
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 10:22
von rads
Hallo,
ich würde diese Informationen, ob der Pfad bereites bekannt ist, nicht in einer extra Datei speichern.
Warum nicht einfach die Pfad-Angaben in einer Menge (Set) speichern, dann hast du auch das
Problem mit der Abfrage, ob schon vorhanden, mit geringem Aufwand erschlagen.
Falls du das ganze programmiert, zu Spaß an der Freund, dann wünsch ich diese.
Ansonsten gibts dafür schon ein sehr gutes Tool namens HTTrack.
Grüße
Stefan
Edit: da war wer schneller
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 10:33
von Sync32
Sind diese Mengen denn auch "belastbar" ?
Oder kommt es zu Problemen, wenn ich da z.B. 500 Elemente drinne habe?
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 10:43
von Darii
Sync32 hat geschrieben:Sind diese Mengen denn auch "belastbar" ?
Oder kommt es zu Problemen, wenn ich da z.B. 500 Elemente drinne habe?
Nein, dafür sind moderne Computer viel zu schnell. Ab fünf/sechsstellig kann man sich langsam Gedanken machen…
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 11:00
von ms4py
Darii hat geschrieben:Sync32 hat geschrieben:Sind diese Mengen denn auch "belastbar" ?
Oder kommt es zu Problemen, wenn ich da z.B. 500 Elemente drinne habe?
Nein, dafür sind moderne Computer viel zu schnell. Ab fünf/sechsstellig kann man sich langsam Gedanken machen…
Aber dann sind Dateien erst recht nicht mehr geeignet. Dann ist nur noch ein DBS sinnvoll.
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 11:54
von noisefloor
ms4py hat geschrieben:Darii hat geschrieben:Sync32 hat geschrieben:Sind diese Mengen denn auch "belastbar" ?
Oder kommt es zu Problemen, wenn ich da z.B. 500 Elemente drinne habe?
Nein, dafür sind moderne Computer viel zu schnell. Ab fünf/sechsstellig kann man sich langsam Gedanken machen…
Aber dann sind Dateien erst recht nicht mehr geeignet. Dann ist nur noch ein DBS sinnvoll.
Genau, dann IMHO am besten ein KV-Store. Python hat ja ein paar (einfache) schon an Bord.
Wobei ich keinen Grund sehe, nicht das o.g. set zu nutzen. Es sei denn, du hast nur so 128 kB RAM
Gruß, noisefloor
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 12:16
von DasIch
noisefloor hat geschrieben:Aber dann sind Dateien erst recht nicht mehr geeignet. Dann ist nur noch ein DBS sinnvoll.
Genau, dann IMHO am besten ein KV-Store. Python hat ja ein paar (einfache) schon an Bord.
Ui, welche den? Bin ja mal gespannt was ich da verpasst habe.
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 12:59
von BlackJack
@DasIch: Na zumindest mal das `shelve`-Modul.
Re: virtuelle Datei
Verfasst: Montag 2. August 2010, 14:01
von noisefloor
Hallo,
DasIch hat geschrieben:noisefloor hat geschrieben:Aber dann sind Dateien erst recht nicht mehr geeignet. Dann ist nur noch ein DBS sinnvoll.
Genau, dann IMHO am besten ein KV-Store. Python hat ja ein paar (einfache) schon an Bord.
Ui, welche den? Bin ja mal gespannt was ich da verpasst habe.
dumbdbm,
anydbm und dann je nach Plattform noch ein
paar andere. Richtig performant ist aber wohl nur
bsddb, welches aber unter Python 3 nicht mehr vorhanden ist.
Hast also nicht sooo viel verpasst.
Gruß, noisefloor