Seite 1 von 1

PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 20:25
von radioflyer
Hallo Gemeinde,

ich bin der Neue und wühle mich durch die Pythondetails, so lernt man es, aber ich verzweifel an einem Anfängerproblem.

Aufgabe: eine PDF Datei aus dem Web laden, die dort jeden Tag mit "Bezeichnung-2016-02-06.pdf" liegen soll. Das habe ich in AUTOIT3, aber
nun muss das auf den Pi, dass der das Nachts schön selber macht.

Aber "Bezeichnung-", das "-" und ".pdf" sind string. Wie klatsche ich das 2016 02 06 (inkl. führender Null) dazwischen?
Mit import time, Tupels entpacken und Join und gedöns - ich raff es nicht... :K

Wäre sehr für nen Tipp dankbar

Cheerz, RF

Re: PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 20:30
von Sirius3
@radioflyer: schau Dir mal das datetime-Modul an.

Re: PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 20:58
von radioflyer
Sirius3 hat geschrieben:@radioflyer: schau Dir mal das datetime-Modul an.
damit hatte ich angefangen :-)
Ähnlicher Fehler: cannot concatenate str und datetime.date objects

Also, zurück auf Start...

cu

Re: PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 21:22
von BlackJack
@radioflyer: Dann vielleicht nicht nur zum `datetime`-Modul, sondern auch dessen Dokumentation. Schau mal was für Methoden es da so gibt und was die tun. Beispiele gibt's da auch.

Re: PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 21:28
von radioflyer
BlackJack hat geschrieben:@radioflyer: Dann vielleicht nicht nur zum `datetime`-Modul, sondern auch dessen Dokumentation. Schau mal was für Methoden es da so gibt und was die tun. Beispiele gibt's da auch.
klaro, das gehört dazu, aber ich hab es - wenn man richtig sucht ist es dann auch einfach:

from datetime import date
heute = date.today()
heute.strftime("%y-%m-%d")
url = url1 + str(heute) + urle

Was fehlte: str(...)

Danke für den Tipp!

cheers, RF

Re: PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 21:41
von BlackJack
@radioflyer: Ist allerdings keine schöne Lösung weil `str()` und ``+`` zum zusammenstückeln von Zeichenketten und Werten eher BASIC als Python ist. In Python gibt's Zeichenkettenformatierung für so etwas. Und die Zeile mit dem `strftime()`-Aufruf ist sinnfrei, die kann weg.

Re: PDF Datei mit aktuellem Datum

Verfasst: Samstag 6. Februar 2016, 22:41
von Sirius3
@radioflyer:

Code: Alles auswählen

"Bezeichnung-{0:%y-%m-%d}.pdf".format(date.today())

Re: PDF Datei mit aktuellem Datum

Verfasst: Sonntag 7. Februar 2016, 09:07
von radioflyer
Sirius3 hat geschrieben:@radioflyer:

Code: Alles auswählen

"Bezeichnung-{0:%y-%m-%d}.pdf".format(date.today())
da das nur 16 als Jahr zurückgibt habe ich Bezeichnung-20 hingefrickelt, meine Urenkel werden es mir nachsehen.
Sieht professioneller aus, tut aber aktuell nicht :| aber nach ein wenig frischer Luft wird das schon :lol:

Schlimm finde ich aber bei der urllib2 das Zielverzeichnis für die Datei anzugeben, war mit urllib einfacher, gerade hinter die url, verz_dateiname
dann aber leider mit komplizierter Error404 (die Datei ist schonmal nicht geschrieben worden) Abfrage.

naja, aber vielleicht auch der Sauerstoffmangel.

erstmal vielen Dank

RF

Re: PDF Datei mit aktuellem Datum

Verfasst: Sonntag 7. Februar 2016, 12:27
von kbr
radioflyer hat geschrieben:da das nur 16 als Jahr zurückgibt habe ich Bezeichnung-20 hingefrickelt
Auch hier hilft die Dokumentation weiter:

"Bezeichnung-{0:%Y-%m-%d}.pdf".format(date.today())

Re: PDF Datei mit aktuellem Datum

Verfasst: Sonntag 7. Februar 2016, 14:51
von BlackJack
@radioflyer: Für den HTTP-Kram würde ich das `requests`-Package verwenden. Das hat die wesentlich schönere API und die ist auch bei Python 2 und 3 gleich.

Re: PDF Datei mit aktuellem Datum

Verfasst: Sonntag 7. Februar 2016, 15:36
von radioflyer
kbr hat geschrieben:
radioflyer hat geschrieben:da das nur 16 als Jahr zurückgibt habe ich Bezeichnung-20 hingefrickelt
Auch hier hilft die Dokumentation weiter:

"Bezeichnung-{0:%Y-%m-%d}.pdf".format(date.today())
habe ich gesehen, aber ich denke das passt schon. Wenn das ein Thema wird, bin ich an der Steinplatte von Petrus durch,
oder brutzel mit dem Windows Entwicklern in der Hölle... ;-)

Re: PDF Datei mit aktuellem Datum

Verfasst: Sonntag 7. Februar 2016, 15:38
von radioflyer
BlackJack hat geschrieben:@radioflyer: Für den HTTP-Kram würde ich das `requests`-Package verwenden. Das hat die wesentlich schönere API und die ist auch bei Python 2 und 3 gleich.
ja, da bin ich dran. Ich brauche irgendwie urllib1,5 - urllib2 ist beim laden sinniger, und urllib hab ich den Error 404
gleich kapiert - die Situation ist aber schon wesentlich verbessert, und dank eurer Hilfe kommt ja schon was :-)

Schönen Sonntag allen

RF

Re: PDF Datei mit aktuellem Datum

Verfasst: Sonntag 7. Februar 2016, 20:40
von Sirius3
@radioflyer: ich denke, das passt nicht. umständlich eine fehleranfällige 20 irgendwo einfügen soll besser sein, als ein kleines in ein großes Y zu verwandeln?

Re: PDF Datei mit aktuellem Datum

Verfasst: Montag 8. Februar 2016, 07:46
von radioflyer
Sirius3 hat geschrieben:@radioflyer: ich denke, das passt nicht. umständlich eine fehleranfällige 20 irgendwo einfügen soll besser sein, als ein kleines in ein großes Y zu verwandeln?
@siri also wenn schon pingelig, dann richtig: wenn ich das mache, kommt Bezeichnung-202016-xxxxx raus. Die Datei findet er aber nicht :-)

Ich habe es dokumentiert, dass es in 84 Jahren knallt :-) - so wie Y2K

Die Datei wurde aber heute morgen zugestellt und eine Email bekam ich auch von dem Teil. Für 4h Python als Sesselpuper nicht schlecht.

Nicht alles so verbissen sehen (Sprichwort aus dem Rheinland: et kütt wie et kütt) - ausserdem bin ich noch an dem Fall dran, dass 404 nicht
abgefangen wird, aber das Wochenende war wieder zu kurz.

cheerz, RF

Re: PDF Datei mit aktuellem Datum

Verfasst: Montag 8. Februar 2016, 18:53
von Dav1d
radioflyer hat geschrieben:
Sirius3 hat geschrieben:@radioflyer: ich denke, das passt nicht. umständlich eine fehleranfällige 20 irgendwo einfügen soll besser sein, als ein kleines in ein großes Y zu verwandeln?
@siri also wenn schon pingelig, dann richtig: wenn ich das mache, kommt Bezeichnung-202016-xxxxx raus. Die Datei findet er aber nicht :-)
Natürlich kommt dann 202016 raus wenn du die 20 noch hardcoded in deinem string hast...
Das hat aber auch nichts mit pingelig zu tun sondern mit Code Qualität. Du bekommst für weniger Aufwand die bessere Lösung, warum dann das Umständliche und Schlechte machen? Um es in Zukunft auch nicht zu verwenden :evil: ?

Re: PDF Datei mit aktuellem Datum

Verfasst: Dienstag 9. Februar 2016, 08:22
von radioflyer
[quote="Dav1d]Du bekommst für weniger Aufwand die bessere Lösung, warum dann das Umständliche und Schlechte machen? Um es in Zukunft auch nicht zu verwenden :evil: ?[/quote]

Kinders, wie beschrieben bin ich an dem HTTP Error in meiner Freizeit dran, und wenn wesentliche Features in einem Programm noch nicht laufen, dann bücke ich mich doch nicht nach den Bröseln. Das eingesetzte Programm ist sauber, die Testvarianten nicht - so what :| . Außerdem hat das nix mit schlechter Laune zu tun, sondern eher mit fehlendem Humor :evil: . Und damit würde ich das hier gerne abschließen, ich nutze die Zeit lieber um den Code zu verbessern - habe ich in 32 Jahren IT nie anders gemacht. Aber der Humor muss ja nicht auf der Strecke bleiben. :wink:

Nochmals Danke für die Hilfe im Coding.

Re: PDF Datei mit aktuellem Datum

Verfasst: Dienstag 9. Februar 2016, 09:09
von BlackJack
@radioflyer: Also die Begründung den Code nicht zu verbessern ist, dass Du die Zeit lieber nutzt um den Code zu verbessern? Und Du sträubst Dich hier gegen eine Änderung die wirklich supereinfach und superschnell gemacht ist, mit mehreren Beiträgen, die ein vielfaches der benötigten Zeit verschlungen haben dürften‽ Na Du hast Humor…

Re: PDF Datei mit aktuellem Datum

Verfasst: Dienstag 9. Februar 2016, 13:45
von radioflyer
BlackJack hat geschrieben:@radioflyer: Na Du hast Humor…
JEP! - alle Verbesserungen gehen am Schluss in das finale Programm (aus 1.0 wird 2.0)

Halte ich für normal, aber es scheint hier viel Spaß zu machen "Stimmung" zu verbreiten, brauche ich nicht.
Ich melde mich hier wieder ab.

Re: PDF Datei mit aktuellem Datum

Verfasst: Dienstag 9. Februar 2016, 14:25
von pillmuncher
@radioflyer: Du scheinst zu glauben, es drehe sich bei dieser Diskussion um dich. Tatsächlich geht es aber um diejeingen, die deinen - schlechten - Code sehen und - weil sie noch wenig oder keine Erfahrung haben - glauben, erfahrene Programmierer ("habe ich in 32 Jahren IT nie anders gemacht") so programmieren sollten, wie du es zeigst. Um diese jungen Menschen vor einem großen Irrtum zu bewahren, darum wird dein Code hier kritisiert.