WinFuture-Forum.de: Download v. stündl.aktualisierter Datei nur nach Cache-Leerung mögl? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Browser & E-Mail
Seite 1 von 1

Download v. stündl.aktualisierter Datei nur nach Cache-Leerung mögl?


#1 Mitglied ist offline   ferion 

  • Gruppe: Mitglieder
  • Beiträge: 4
  • Beigetreten: 22. Juli 21
  • Reputation: 0

geschrieben 22. Juli 2021 - 13:12

Mein Lieferant stellt seinen Kunden seit neuestem stündlich seinen jeweils aktuellen Lagerbestand in Form einer .csv Datei zum Download zur Verfügung.

Wenn ich (als einer seiner Kunden) nun erstmals seine Datei runterlade und z.B. in Excel öffne (bzw. aus Text/CSV importiere), sehe ich tatsächlich den aktuellen Lagerbestand. Wenn ich dann allerdings später eine aktualisierte (= neuere Version) der Datei runterlade (und mit dieser entweder die dann nicht mehr aktuelle Datei überschreibe oder alternativ „neu“ abspeichere werden mir dann beim Öffnen nicht die aktuellen Lagerbestände, sondern immer noch die Bestände aus der ursprünglichen Datei angezeigt.

(Ich habe mit anderen Händlern gesprochen, die haben dieses Problem nicht).

Ich habe festgestellt, daß ich, um die jeweils aktuelle Datei downloaden zu können, im jeweils genutzten Browser erst immer den Cache leeren muß. (Ich habs versucht mit Firefox, Chrome & Edge)

Meine Frage: gibt es da eine andere Option? - Es kann doch nicht sein, dass ich jedes Mal erst den Browser-Cache leeren muß, damit ich die jeweils aktuelle Datei runtergeladen bekommen.

Würde mich über einen Tipp sehr freuen

Danke im voraus
ferion

Dieser Beitrag wurde von ferion bearbeitet: 22. Juli 2021 - 13:14

0

Anzeige



#2 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 314
  • Beigetreten: 16. November 05
  • Reputation: 45

geschrieben 22. Juli 2021 - 15:10

derartiges waere mir bis jetzt noch nie untergekommen.

wenn das ding jede stunde aktualisiert wird wuerde ich da aber auch nicht im browser herumhampeln sondern mir die datei jede stunde automatisch downloaden, z.b. mit powershell:

powershell.Exe -command "& {$client = new-object System.Net.WebClient;$client.DownloadFile('https://dein-lieferant.de/file.csv','c:\dein\ordner\file.csv')}"


und das ding dann in der aufgabenplanung als automatischen task anlegen damit das eben alle x zeit ausgefuehrt wird.
3

#3 Mitglied ist offline   Stef4n 

  • Gruppe: aktive Mitglieder
  • Beiträge: 858
  • Beigetreten: 20. August 18
  • Reputation: 172
  • Geschlecht:Männlich
  • Wohnort:RLP ~Mainz
  • Interessen:pc

geschrieben 22. Juli 2021 - 21:25

Super Lösung mit Powershell & Aufgabenplanung, so würde ich das auch machen.
Erklärt zwar nicht das Cache Löschen Problem, aber solche wiederkehrenden Aufgaben gehören auch einfach automatisiert, damit man sich da nicht selbst drum kümmern muss.
... aber bitte vorher ein Backup machen! ;-)
1

#4 Mitglied ist offline   ferion 

  • Gruppe: Mitglieder
  • Beiträge: 4
  • Beigetreten: 22. Juli 21
  • Reputation: 0

geschrieben 23. Juli 2021 - 07:31

hallo ihr beiden. Besten DAnk für den Tip. obwohl ich als Laie von der oben beschriebenen PowerShell noch nie etwas gehört habe). Daher bitte nur um mildes Augenrollen in Anbetracht meiner blauäugigen Fragen in Bezug auf CaNNoNs post:

1) https://dein-lieferant.de/file.csv wäre der vom Lieferanten zur Verfügung gestellte Download Link, den ich bisher in die Browser-Eingabezeile eingegeben habe, korrekt ?

2) c:\dein\ordner\file.csv wäre mein gewünschtes Zielverzeichnis, wobei file.csv der Dateiname der runtergeladenen Datei ist

3) Powershell rufe ich per Eingabe von Powershell über die Windows Eingabeaufforderung auf und wähle dann die Powershell App auf?!

4) Und dann gebe ich in der Kommandozeile (hinter dem >) ohne die Anführungszeichen den Befehl
& {$client = new-object System.Net.WebClient;$client.DownloadFile('https://dein-lieferant.de/file.csv','c:\dein\ordner\file.csv')}
ein


5) In der Powershell steht bei mir eine Warnmeldung - (Warnung: PowerShell hat erkannt, dass Sie möglicherweise eine Sprachausgabe verwenden und PSReadline aus Kompatibilitätszwecken deaktiviert haben. Wenn Sie es erneut aktivieren möchten, führen Sie „Import-Modul psReadline” aus.) - kann ich diese ignorieren?

Gruß
ferion

Dieser Beitrag wurde von ferion bearbeitet: 23. Juli 2021 - 07:34

0

#5 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 314
  • Beigetreten: 16. November 05
  • Reputation: 45

geschrieben 23. Juli 2021 - 12:43

hi,
1-3 sind soweit korrekt, ich hab's jetzt selbst ein bisschen getestet, versuch mal folgendes:

du speicherst folgendes als c:\dein\pfad\autodownload.ps1

Zitat

$client = new-object System.Net.WebClient;$client.DownloadFile('https://dein-lieferant.de/file.csv','c:\dein\ordner\file.csv')


dann oeffnest du die powershell (oder die alte eingabeaufforderung CMD) und gibst dort folgendes ein:
SCHTASKS /CREATE /SC HOURLY /TN "MyTasks\Autodownloader" /TR "powershell.Exe -command c:\dein\pfad\autodownload.ps1" /ST 00:05 /RU dein-benutzername /RP dein-passwort


das erstellt dir einen task "Autodownloader" im ordner "MyTasks" innerhalb der aufgabenplanung, dieser fuehrt stuendlich ab 00:05 uhr das script c:\dein\pfad\autodownload.ps1 mit deinen hinterlegten benutzerrechten aus. das 00:05 uhr bezieht sich dabei lediglich auf den initialen startzeitpunkt, wenn du das so eintraegst muesstest du also bis 00:05 uhr warten bis das ding anfaengt und dann laeufts jede stunde durch.

Dieser Beitrag wurde von CaNNoN bearbeitet: 23. Juli 2021 - 12:44

1

#6 Mitglied ist offline   Stef4n 

  • Gruppe: aktive Mitglieder
  • Beiträge: 858
  • Beigetreten: 20. August 18
  • Reputation: 172
  • Geschlecht:Männlich
  • Wohnort:RLP ~Mainz
  • Interessen:pc

geschrieben 23. Juli 2021 - 21:08

Beitrag anzeigenZitat (CaNNoN: 23. Juli 2021 - 12:43)


dann oeffnest du die powershell (oder die alte eingabeaufforderung CMD) und gibst dort folgendes ein:
SCHTASKS /CREATE /SC HOURLY /TN "MyTasks\Autodownloader" /TR "powershell.Exe -command c:\dein\pfad\autodownload.ps1" /ST 00:05 /RU dein-benutzername /RP dein-passwort





Ich würde den Powershell Aufruf in der Aufgabenplanung mal so vervollständigen:

PowerShell.exe -ExecutionPolicy Bypass -File c:\dein\pfad\autodownload.ps1


Da mal davon auszugehen ist, dass auf dem Rechner keine ExecutionPolicy gesetzt ist. und -File wäre der richtige Parameter für den Script Aufruf, -command ist laut Doku nur für Kommandos gedacht, aber habe das jetzt nicht ausprobiert.
... aber bitte vorher ein Backup machen! ;-)
1

#7 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 314
  • Beigetreten: 16. November 05
  • Reputation: 45

geschrieben 23. Juli 2021 - 21:55

Zitat

-ExecutionPolicy Bypass



das ist tatsaechlich das 1. an das ich dachte - und dann bin ich waehrend dem verfassen des beitrags x mal abgelenkt worden, mein system hat mich beim testen auch nicht mehr daran erinnert und zack.. vergessen - danke dir :D

mit -file hast auch recht, -command scheint er aber tatsaechlich auch zu schlucken.
0

#8 Mitglied ist offline   ferion 

  • Gruppe: Mitglieder
  • Beiträge: 4
  • Beigetreten: 22. Juli 21
  • Reputation: 0

geschrieben Gestern, 13:09

Hi,
vielen Dank, dass ihr euch mit meinem Problem beschäftigt habt. Ich habe mir eure Kommentare durchgelesen und zumindest versucht, sie mit meinen rudimentären PC-Fähigkeiten nachzuvollziehen

Long story short: klappt nicht.

Daher wäre es super, wenn ihr euch mal mein exaktes Vorgehen ansehen würdet, um dadurch hoffentlich meinen Fehler zu finden. Ich muß dazu sagen, dass ich vor euren Tips noch nie etwas von der Powershell sowie der MS Aufgabenplanung gehört hatte, so dass ich vermute, dass meine darin gemachten Angaben einfach fehlerhaft sind.

Mein Vorgehen:

1. Anlegen einer ps1 Datei mittels MS PowerShell ISE mit dem Namen autodownload.ps1 mit folgendem Inhalt: $client = new-object System.Net.WebClient;$client.DownloadFile('https://Downloadlink.de/Lagerbestand.csv','c:\Downloadzielverzeichnis\Lagerbestand.csv')

2. alternativ Vorgehensweise A:
Eingabeaufforderung CMD: SCHTASKS /CREATE /SC HOURLY /TN "MyTasks\Autodownloader" /TR "powershell.Exe -command E:\SpeicherortderPS1Datei\autodownload.ps1" /ST 17:05

Den Rest der Zeile /RU dein-benutzername /RP dein-passwort habe ich weggelassen, weil ich mir nicht sicher war was, damit gemeint war (mein PC Name sowie mein Windows Anmelde-Passwot ?)

Daraufhin habe ich die MS Aufgabenplanung (=ManagementConsole 3.0) aufgerufen, die Aufgabe Autodownloader darin aber nicht entdecken können. (Wobei ich in dem Programm auch keinen Ordner MyTasks entdecken kann)


2.Alternativ Vorgehensweise B:

Händische Erstellung einer Aufgabe im Aufgabenplaner (anhand der Angaben unter https://www.tech-faq...ung-ausfuehren/ )wie folgt:

Aufgabe erstellen: s. Anhang 01
Eingabe im Reiter „Allgemein“: s. Anhang 02 (im Feld Speicherort kann ich seltsamerweise (?!) nichts eingeben, da ausgegraut)

Reiter „Trigger“: s. Anhang 03

Reiter „Aktion bearbeiten“: s. Anhang 04
Im dortigen Eingabefeld Argumente hinzufügen (im Anhang gelb markiert) habe ich eingegeben -command E:\meinSpeicherpfadderPS1Datei\autodownload.ps1

Dem Reiter „Verlauf“ zufolge wird die Aufgabe offenbar auch stündlich ausgeführt, (s. Anhang 05) aber im gewünschten Zielverzeichnis wird nichts abgespeichert. Außerdem steht im mittigen oberen Bildschirmfenster der Aufgabenplanung wie folgt: s. Anhang05 blau markiert
Reiter

Gruß
ferion

Angehängte Miniaturbilder

  • Angehängtes Bild: JTL - Aufgabenplanung01.JPG
  • Angehängtes Bild: JTL - Aufgabenplanung02.JPG
  • Angehängtes Bild: JTL - Aufgabenplanung03.JPG
  • Angehängtes Bild: JTL - Aufgabenplanung04.JPG
  • Angehängtes Bild: JTL - Aufgabenplanung05.JPG
  • Angehängtes Bild: JTL - Aufgabenplanung06.JPG

Dieser Beitrag wurde von ferion bearbeitet: Gestern, 13:10

0

#9 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 314
  • Beigetreten: 16. November 05
  • Reputation: 45

geschrieben Gestern, 14:16

versuch im reiter aktion bearbeiten unter argumente mal folgendes einzugeben:

-ExecutionPolicy Bypass -File E:\meinSpeicherpfadderPS1Datei\autodownload.ps1


der ordner in dem das script liegt sollte nach moeglichkeit keine leerzeichen beinhalten, ansonsten setz den pfad unter anfuehrungszeichen.

mit <dein-benutzername> und <dein-passwort> waren deine pc-login-daten gemeint.

der task sieht soweit ganz gut aus und ist eigentlich eh so eingestellt wie in meiner "schtasks"-zeile :-)
0

#10 Mitglied ist offline   ferion 

  • Gruppe: Mitglieder
  • Beiträge: 4
  • Beigetreten: 22. Juli 21
  • Reputation: 0

geschrieben Gestern, 16:07

hi CaNNonN

besten Dank.
Leider hat das nichts gebracht.

Einige Anmerkungen/verständnisfragen dazu:

wenn ich die Option der cmd Eingabe benutze, müßte diese Task (egal, ob ich nun Benutzername und passwort in die Befehlszeile mit aufnehme oder nicht(?)), dann doch in der MS Aufgabenplanung (=ManagementConsole 3.0) sehen, oder? (d.h. im oberen Teil des Bildschirms - s. Anhang 05 in meinem letzten Post)

mein PC-Login Benutzername hat ein Leerzeichen. Dies resultiert in einer Fehlermeldung, wenn ich es in der cmd Eingabe in die Befehlszeile integriere. Wenn diese Daten also obligatorisch sind, damit die Task erfolgreich in der Aufgabenplanung erstellt werden, wäre das ja offenbar der Grund, warum es damit nicht funktioniert.

Meine innerhalb der Aufgabenplanung händisch erstellte Task "Lagerbestandsupdate" wird ja offenbar stündlich ausgeführt. Die Log-Ergebnisse unterscheiden sich aber offensichtlich. (s. Anhang in diesem Post)

Gruß
ferion

Angehängte Miniaturbilder

  • Angehängtes Bild: JTL - Aufgabenplanung05_LI.jpg

0

#11 Mitglied ist offline   CaNNoN 

  • Gruppe: aktive Mitglieder
  • Beiträge: 314
  • Beigetreten: 16. November 05
  • Reputation: 45

geschrieben Gestern, 22:52

richtig, der task muesste zu sehen sein - in meinem beispiel muesstest du den "MyTask" ordner dann links im aufklappmenu finden, wenn du "aufgabenplanungsbibliothek" erweiterst.

auch ohne benutzername sollte der dort zu finden sein - wenn du ein leerzeichen im namen hast, dann den ganzen namen unter anfuehrungszeichen setzen - anhand deiner screenshots ist aber ersichtlich, dass der benutzername "thorsten" ist, du bist vermutlich vom anzeigenamen ausgegangen (das ist der, der z.b. im startmenu erscheint oder der vom persoenliche daten ordner). um auf nummer sicher zu gehen kannst du im cmd-fenster dieses hier eingeben: echo %username%

was passiert denn wenn du das script manuell in der powershell ausfuehrst? also powershell oeffnen und eingeben:
E:\meinSpeicherpfadderPS1Datei\autodownload.ps1

wenn der sicherheitsfehler "unauthorizedaccess" auftritt, dann mit:
powershell.exe -ExecutionPolicy Bypass -File E:\meinSpeicherpfadderPS1Datei\autodownload.ps1


was die widerspruechliche aussage im protokoll anbelangt.. versuch mal den startzeitpunkt auf eine zeit in der zukunft zu setzen, also aktuelle zeit + 5 minuten oder sowas in der richtung.
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0