MS Power Automate (Desktop) Flow starten automatisiert
Hallo,
immer wenn ich MS Power Automate nutze, verzweifel ich, an den Basics.
Jetzt habe ich einen Flow fertig, der funktioniert, wenn ich den manuell ausführe, kann es aber nicht automatisieren.
Die ganzen Videos, Seiten, Tipps zeigen immer andere Versionen als ich habe, und ich hab die Desktop App (aktuell).
Auch ChatGPT fragt Sachen, die ich nicht beantworten kann.
ChatGPT meint, den Flow exportieren als JSON und dann im Aufgabenplaner rein ....
Nur kann ich den Flow nicht exportieren, oder mit speichern unter, an einem Pfad ablegen.
Ich weiß auch nicht wo mein Flow liegt.
Denn unter Benutzerdaten Dokumente finde ich den auch nicht.
Im Grunde möchte ich nur meinen Flow automatisch täglich laufen lassen.
Gerne über Aufgabenplaner oder über PowerShell starten.
In den Videos sehe ich immer nur Power Automate Cloud ....
Habt Ihr eine Idee, wie ich einen fertigen Flow, automatisch täglich starten lassen kann?
Hab das früher schon mal versucht und hab einen Task im Aufgabenplaner, der so aussieht (aber nicht funktioniert, wird ausgeführt, aber die Doings passieren nicht)
Aktion: "C:\Program Files (x86)\Power Automate Desktop\PAD.Console.Host.exe"
Argument: "ms-powerautomate:/console/flow/run?workflowName="aWattar_Preis - TelegramChat"
Danke und LG.
Wenn ich es dennoch noch rausfinden sollte, gebe ich hier Bescheid ; )
immer wenn ich MS Power Automate nutze, verzweifel ich, an den Basics.
Jetzt habe ich einen Flow fertig, der funktioniert, wenn ich den manuell ausführe, kann es aber nicht automatisieren.
Die ganzen Videos, Seiten, Tipps zeigen immer andere Versionen als ich habe, und ich hab die Desktop App (aktuell).
Auch ChatGPT fragt Sachen, die ich nicht beantworten kann.
ChatGPT meint, den Flow exportieren als JSON und dann im Aufgabenplaner rein ....
Nur kann ich den Flow nicht exportieren, oder mit speichern unter, an einem Pfad ablegen.
Ich weiß auch nicht wo mein Flow liegt.
Denn unter Benutzerdaten Dokumente finde ich den auch nicht.
Im Grunde möchte ich nur meinen Flow automatisch täglich laufen lassen.
Gerne über Aufgabenplaner oder über PowerShell starten.
In den Videos sehe ich immer nur Power Automate Cloud ....
Habt Ihr eine Idee, wie ich einen fertigen Flow, automatisch täglich starten lassen kann?
Hab das früher schon mal versucht und hab einen Task im Aufgabenplaner, der so aussieht (aber nicht funktioniert, wird ausgeführt, aber die Doings passieren nicht)
Aktion: "C:\Program Files (x86)\Power Automate Desktop\PAD.Console.Host.exe"
Argument: "ms-powerautomate:/console/flow/run?workflowName="aWattar_Preis - TelegramChat"
Danke und LG.
Wenn ich es dennoch noch rausfinden sollte, gebe ich hier Bescheid ; )
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 41589362570
Url: https://administrator.de/contentid/41589362570
Ausgedruckt am: 22.11.2024 um 09:11 Uhr
10 Kommentare
Neuester Kommentar
Guckst du hier, das hatte ich für was ähnliches schon mal verwendet:
PowerShell: Einführung in die Webbrowser Automation mit Selenium WebDriver
Gruß siddius
p.s. gerade mal für die Seite ausprobiert (Je nachdem welcher Browser bei dir installiert ist den Parameter der 3 Zeile auf "Firefox", "Edge" oder "Chrome" ändern):
PowerShell: Einführung in die Webbrowser Automation mit Selenium WebDriver
Gruß siddius
p.s. gerade mal für die Seite ausprobiert (Je nachdem welcher Browser bei dir installiert ist den Parameter der 3 Zeile auf "Firefox", "Edge" oder "Chrome" ändern):
# Funktion von o.g. Link einbauen
$imagepath = "$home\Desktop\chart.png"
$browser = Create-Browser -browser Firefox
$browser.Url = 'https://www.awattar.at/'
[void]$browser.Navigate()
sleep 1
$element = $browser.FindElement([OpenQA.Selenium.By]::Id('chartTransparencyData'))
[io.File]::WriteAllBytes($imagepath,[Convert]::FromBase64String($element.GetScreenshot().AsBase64EncodedString))
$browser.Quit()
Zitat von @K-ist-K:
@7907292512 vielen lieben Dank. Das bringt ich einen gewaltigen Schritt näher.
Für die Leute, die nur den Code testen, ihr müsst auch den Link aufmachen und die Funktion in euren Code einbauen.
Steht doch oben im Kommentar 🙃. Code nochmal redundant hier reinkopieren ist kontraproduktiv wenn er sich im Ursprungsbeitrag mal ändert!!@7907292512 vielen lieben Dank. Das bringt ich einen gewaltigen Schritt näher.
Für die Leute, die nur den Code testen, ihr müsst auch den Link aufmachen und die Funktion in euren Code einbauen.
Wie ist das beim abändern?
Element wie oben gezeigt auswählen und die Click() Methode drauf ausführen ;-P, die Seite ist hier etwas tricky muss man etwas tricksen damit er das Element erfolgreich ansteuern kann.$imagepath = "$home\Desktop\chart.png"
$browser = Create-Browser -browser Firefox
$browser.Url = 'https://www.awattar.at/'
[void]$browser.Navigate()
sleep 1
$element = $browser.FindElement([OpenQA.Selenium.By]::Id('chartTransparencyData'))
$btn = $browser.FindElement([OpenQA.Selenium.By]::CssSelector('input[type="radio"][name="factor"][value="1.2"]'))
$actions = New-Object OpenQA.Selenium.Interactions.Actions $browser
$actions.ScrollByAmount(0,$btn.Location.Y-200)
$actions.Pause([timespan]::FromSeconds(1))
$actions.Click($btn)
$actions.Pause([timespan]::FromSeconds(1))
$actions.Perform()
[io.File]::WriteAllBytes($imagepath,[Convert]::FromBase64String($element.GetScreenshot().AsBase64EncodedString))
$browser.Quit()
Klappt hier im Test problemlos. Habe oben mal eine zusätzliche Sekunde eingebaut damit das JavaScript Zeit hat den Canvas zu aktualisieren. Manche Browser sind da eben etwas lahm.
Das verstehe ich gar nicht:
$actions.ScrollByAmount(0,$btn.Location.Y-200)
Beim Aufruf der Seite ist oben ein statischer fixierter Cookie Banner der im Weg ist, das ist ein Workaround damit nicht zu weit runter gescrollt wird und der Button von dem Banner verdeckt wird ...$actions.ScrollByAmount(0,$btn.Location.Y-200)
Mit einem Telegram Bot ein Photo senden geht übrigens schnell und schmerzlos auch ohne das Installieren eines extra Moduls ..
$photo = "D:\demo.png"
$botid = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
$chatid = "xxxxxxx"
$imagecaption="Testbild"
$client = New-Object System.Net.Http.HttpClient
$mpart = New-Object System.Net.Http.MultipartFormDataContent
[byte[]]$file_bytes = [IO.File]::ReadAllBytes($photo)
$mpart.Add([System.Net.Http.ByteArrayContent]::new($file_bytes,0,$file_bytes.Length),'"photo"',"`"$(Split-Path $photo -Leaf)`"")
$result = $client.PostAsync("https://api.telegram.org/bot$botid/sendPhoto?chat_id=$chatid&caption=$([System.Net.WebUtility]::UrlEncode($imagecaption))",$mpart)
$result
$client.Dispose()