Website auf Neuen Text suchen und Button betätigen
Moderator: jNizM
Website auf Neuen Text suchen und Button betätigen
Hallo Liebe Leute,
ich hoffe jmd kann mir bei diesem Problem helfen.
Ich möchte eine Website automatisch überwachen auf neu hinzugekommen Text und dann einen Button betätigen.
Es sind mehrere Links auf einer Seite, 10-20 Stück etwa, rasterförmig aufgebaut. Unter jedem dieser Links ist ein Button.
Es kommen hin und wieder neue Links dazu. Die Seite muss dafür natürlich alle paar Sekunden aktualisiert werden. Mein Script soll nun erkennen wenn ein neuer Link dazu gekommen ist und den Button unter dem Link betätigen.
Es müsste also der ganze Seiteninhalt in eine Variable oder in die Zwischenablage (oder in ein Textfile?) kopiert werden und nach jeder Seitenaktualisierung verglichen werden ob was neues dazu gekommen ist. Falls ja->Button darunter drücken.
Der Button heist immer "Ansehen", die Links heissen leider immer anderst.
Ich kriege es mit meinem Wissen gerade mal hin die Seite regelmäßig zu aktualisieren, aber das warst dann auch.
Ich habe bereits mit URLDownloadToFile probiert den Seiteninhalt in eine Datei zu kopieren, das funktioniert leider nicht da eine Anmeldung auf der Seite notwendig ist. Ich hab keine Ahnung wie man die Anmeldedaten im Script mitgeben kann und ob das überhaupt geht.
Ich könnte die Seite mit STRG+A markieren und in Zwischenspeicher oder Textfile einfügen. Aber was ich überhaupt nicht versteh ist wie das auf neuen Text durchsucht und der Button betätigt werden soll.
Ich wäre Euch sehr dankbar für jeden Tipp.
ich hoffe jmd kann mir bei diesem Problem helfen.
Ich möchte eine Website automatisch überwachen auf neu hinzugekommen Text und dann einen Button betätigen.
Es sind mehrere Links auf einer Seite, 10-20 Stück etwa, rasterförmig aufgebaut. Unter jedem dieser Links ist ein Button.
Es kommen hin und wieder neue Links dazu. Die Seite muss dafür natürlich alle paar Sekunden aktualisiert werden. Mein Script soll nun erkennen wenn ein neuer Link dazu gekommen ist und den Button unter dem Link betätigen.
Es müsste also der ganze Seiteninhalt in eine Variable oder in die Zwischenablage (oder in ein Textfile?) kopiert werden und nach jeder Seitenaktualisierung verglichen werden ob was neues dazu gekommen ist. Falls ja->Button darunter drücken.
Der Button heist immer "Ansehen", die Links heissen leider immer anderst.
Ich kriege es mit meinem Wissen gerade mal hin die Seite regelmäßig zu aktualisieren, aber das warst dann auch.
Ich habe bereits mit URLDownloadToFile probiert den Seiteninhalt in eine Datei zu kopieren, das funktioniert leider nicht da eine Anmeldung auf der Seite notwendig ist. Ich hab keine Ahnung wie man die Anmeldedaten im Script mitgeben kann und ob das überhaupt geht.
Ich könnte die Seite mit STRG+A markieren und in Zwischenspeicher oder Textfile einfügen. Aber was ich überhaupt nicht versteh ist wie das auf neuen Text durchsucht und der Button betätigt werden soll.
Ich wäre Euch sehr dankbar für jeden Tipp.
Re: Website auf Neuen Text suchen und Button betätigen
Wenn man sich erst einloggen muss, um an den Inhalt der Seite zu kommen, gibt es 3 Möglichkeiten
1. Über internet Explorer mit hilfe von ComObjConnect() bzw. ComObjCreate()
2. Chrome.ahk
3. WinHttpRequest
1. Über internet Explorer mit hilfe von ComObjConnect() bzw. ComObjCreate()
2. Chrome.ahk
3. WinHttpRequest
Re: Website auf Neuen Text suchen und Button betätigen
Ich nutze Chrome und habe mir die Chrome.ahk mal angeschaut. Ist leider zu kompliziert für mich, und ausserdem funktioniert das nur wenn Chrome sich im Debug-Modus befindet. Ich weiss nicht ob ich damit klarkomme und ob das so überhaupt funktioniert.
Würde es denn nicht mit der STRG+A Methode funktionieren? So wäre ich ja schon eingeloggt.
Würde es denn nicht mit der STRG+A Methode funktionieren? So wäre ich ja schon eingeloggt.
Re: Website auf Neuen Text suchen und Button betätigen
Problem beim Download mittels URLDownloadToFile dürfte die SessionID-Thematik sein: https://autohotkey.com/board/topic/35365-urldownloadtofile/
Doch vll geht es ja auch durch die Brust ins Auge https://chrome.google.com/webstore/detail/visualping/pemhgklkefakciniebenbfclihhmmfcd und mit AHK wird dann eben der eMail-Eingang bzw ChromeTab ge-monitored
Visualping is a simple service for monitoring websites for changes. You'll receive an email notification when it detects any change in the content of the page. Use the service for competition monitoring, price checks, ticket availability tracking and more using the server service and email alerts (62 checks/month free) or browser tab (free as your computer does the job)
Doch vll geht es ja auch durch die Brust ins Auge https://chrome.google.com/webstore/detail/visualping/pemhgklkefakciniebenbfclihhmmfcd und mit AHK wird dann eben der eMail-Eingang bzw ChromeTab ge-monitored
Visualping is a simple service for monitoring websites for changes. You'll receive an email notification when it detects any change in the content of the page. Use the service for competition monitoring, price checks, ticket availability tracking and more using the server service and email alerts (62 checks/month free) or browser tab (free as your computer does the job)
Re: Website auf Neuen Text suchen und Button betätigen
Ich kenne die Seite jetzt nicht, aber Strg+A wird nur den Text kopieren aber nicht die Verlinkungen. Und außerdem die lInks können nicht sauber extrahiert werden. Mit Quellcode könnte man anhand des ClassName oder IDs (oder was auch immer benutzt wird) besser identifizieren und extrahieren.
Re: Website auf Neuen Text suchen und Button betätigen
Ja, ist es etwas kompliziert, aber deine Problemstellung ist auch nicht gerade trivial.
Debug-Modus in Chrome ist normalerweise kein Problem - den bemerkt man im normalen Gebrauch gar nicht. Aber ja, der Browser muss in diesem Modus gestartet werden, um Chrome.ahk nutzen zu können (dafür kann man bspw. eine entsprechende Verknüpfung anlegen, oder AutoHotkey den Start des Browsers überlassen).
Ohne spezifischere Details zur Seite werden Vorschläge wahrscheinlich auch eher unspezifisch bleiben (müssen).
Re: Website auf Neuen Text suchen und Button betätigen
Da steht dass URLDownloadToFile mit IE funktionieren muss wenn der Haken bei "Angemeldet bleiben" drin ist, da Cookies verwendet werden. Funktioniert bei mir aber nicht, habe es mit jedem Browser probiertBoBo wrote: ↑05 Oct 2020, 10:51Problem beim Download mittels URLDownloadToFile dürfte die SessionID-Thematik sein: https://autohotkey.com/board/topic/35365-urldownloadtofile/
Doch vll geht es ja auch durch die Brust ins Auge https chrome.google.com /webstore/detail/visualping/pemhgklkefakciniebenbfclihhmmfcd Broken Link for safety und mit AHK wird dann eben der eMail-Eingang bzw ChromeTab ge-monitored
Visualping is a simple service for monitoring websites for changes. You'll receive an email notification when it detects any change in the content of the page. Use the service for competition monitoring, price checks, ticket availability tracking and more using the server service and email alerts (62 checks/month free) or browser tab (free as your computer does the job)
Visualping macht glaube ich auch nix anderes wie "Distill" welches ich bereits nutze. Das tut aber nur die Seite monitoren und benachrichtigt mich wenn es eine Änderung gibt. Das kann leider keine Aktionen ausführen
mit cURL soll es irgendwie machbar sein, konnte jedoch kein Beispielcode oder ähnliches finden was meiner Situation entspricht. Hat da jemand Erfahrung damit?
Welche Details wären denn relevant? Den Seitennamen darf ich hier leider nicht nennengregster wrote:Ja, ist es etwas kompliziert, aber deine Problemstellung ist auch nicht gerade trivial.
Debug-Modus in Chrome ist normalerweise kein Problem - den bemerkt man im normalen Gebrauch gar nicht. Aber ja, der Browser muss in diesem Modus gestartet werden, um Chrome.ahk nutzen zu können (dafür kann man bspw. eine entsprechende Verknüpfung anlegen, oder AutoHotkey den Start des Browsers überlassen).
Ohne spezifischere Details zur Seite werden Vorschläge wahrscheinlich auch eher unspezifisch bleiben (müssen).
Mir ist noch eingefallen dass man die Seite mit STRG+S lokal speichern könnte. So würde man doch auch an den Quellcode rankommen oder? Könnte man damit evtl. arbeiten??
Re: Website auf Neuen Text suchen und Button betätigen
URLDownoadToFile wäre ja auch nichts anderes. Wenn sich damit die Änderungen belegen/ermitteln ließen, go 4 it.Mir ist noch eingefallen dass man die Seite mit STRG+S lokal speichern könnte. So würde man doch auch an den Quellcode rankommen oder? Könnte man damit evtl. arbeiten??
Was ich nicht verstehe, wenn die Browser Extensions funktionieren, warum nicht mit AHK auf deren notifications monitoren (mit anschließend weiterer Aktion), sofern diese einfacher zu fassen wären??
Re: Website auf Neuen Text suchen und Button betätigen
Hier wäre mal ein Abschnitt aus der Seite mit den erwähnten Links, 3 Stück in dem Fall:
Hier könnten nun jederzeit neue Links dazukommen. Wie finde ich raus welcher davon neu ist und vor allem, wie betätige ich den Ansehen button? Es gibt ja keine URL für diesen Button. Ich muss es irgendwie anhand der ID aufrufen
Warum übrigens die "://" nach dem https in dem Codesegment verschwinden beim Posten, weiss ich nicht.
Code: Select all
<div class="vvp-item-tile" data-recommendation-id="XXX#B08HHLJNWYY#72414481" data-img-url="https://m.testseite.com/images/I/41VRRURqPlL._1233_.jpg">
<div class="vvp-item-tile-content">
<img alt="" src="./x_files/41VRRURqPlL._1123_.jpg"><div class="vvp-item-product-title-container">
<a class="a-link-normal" target="_blank" rel="noopener" href="https://www.testseite.de/dp/B08HHLJNWYY"><span class="a-truncate" data-a-word-break="normal" data-a-max-rows="2" data-a-overflow-marker="&hellip;" style="line-height: 1.3em !important; max-height: 2.6em;" data-a-recalculate="false" data-a-updated="true"><span class="a-truncate-full a-offscreen">Erster Link blabla</span><span class="a-truncate-cut" aria-hidden="true" style="height: 2.6em;">Erster Link…</span></span></a></div>
<span class="a-button a-button-primary vvp-details-btn" id="a-autoid-1"><span class="a-button-inner"><input data-asin="B08HHLJNWYY" data-is-parent-asin="false" data-recommendation-id="XXX#B08HHLJNWYY#72414481" data-recommendation-type="XXX_FOR_ALL" class="a-button-input" type="submit" aria-labelledby="a-autoid-1-announce"><span class="a-button-text" aria-hidden="true" id="a-autoid-1-announce">Ansehen</span></span></span></div>
</div>
<div class="vvp-item-tile" data-recommendation-id="XXX#C08YUB7GOG#311847" data-img-url="https://m.testseite.com/images/I/41AZ0kaQaRL._1123_.jpg">
<div class="vvp-item-tile-content">
<img alt="" src="./x_files/41AZ0kaQaRL._1123_.jpg"><div class="vvp-item-product-title-container">
<a class="a-link-normal" target="_blank" rel="noopener" href="https://www.testseite.de/dp/C08YUB7GOG"><span class="a-truncate" data-a-word-break="normal" data-a-max-rows="2" data-a-overflow-marker="&hellip;" style="line-height: 1.3em !important; max-height: 2.6em;" data-a-recalculate="false" data-a-updated="true"><span class="a-truncate-full a-offscreen">Zweiter Link blabla</span><span class="a-truncate-cut" aria-hidden="true" style="height: auto;">Zweiter Link...</span></span></a></div>
<span class="a-button a-button-primary vvp-details-btn" id="a-autoid-2"><span class="a-button-inner"><input data-asin="C08YUB7GOG" data-is-parent-asin="false" data-recommendation-id="XXX#C08YUB7GOG#311847" data-recommendation-type="XXX_FOR_ALL" class="a-button-input" type="submit" aria-labelledby="a-autoid-2-announce"><span class="a-button-text" aria-hidden="true" id="a-autoid-2-announce">Ansehen</span></span></span></div>
</div>
<div class="vvp-item-tile" data-recommendation-id="XXX#A06YSQCWS8#311850" data-img-url="https://m.testseite.com/images/I/41YdUj13M3L._1123_.jpg">
<div class="vvp-item-tile-content">
<img alt="" src="./x_files/41YdUj13M3L._1123_.jpg"><div class="vvp-item-product-title-container">
<a class="a-link-normal" target="_blank" rel="noopener" href="https://www.testseite.de/dp/A06YSQCWS8"><span class="a-truncate" data-a-word-break="normal" data-a-max-rows="2" data-a-overflow-marker="&hellip;" style="line-height: 1.3em !important; max-height: 2.6em;" data-a-recalculate="false" data-a-updated="true"><span class="a-truncate-full a-offscreen">Dritter Link blabla</span><span class="a-truncate-cut" aria-hidden="true" style="height: auto;">Dritter Link ...</span></span></a></div>
<span class="a-button a-button-primary vvp-details-btn" id="a-autoid-3"><span class="a-button-inner"><input data-asin="A06YSQCWS8" data-is-parent-asin="false" data-recommendation-id="XXX#A06YSQCWS8#311850" data-recommendation-type="XXX_FOR_ALL" class="a-button-input" type="submit" aria-labelledby="a-autoid-3-announce"><span class="a-button-text" aria-hidden="true" id="a-autoid-3-announce">Ansehen</span></span></span></div>
</div>
Warum übrigens die "://" nach dem https in dem Codesegment verschwinden beim Posten, weiss ich nicht.
Last edited by BoBo on 06 Oct 2020, 14:14, edited 1 time in total.
Reason: Die Links gefixt.
Reason: Die Links gefixt.
Re: Website auf Neuen Text suchen und Button betätigen
Denke mal so wie du es selbst machen würdest, Vorher <> Nachher-Vergleich. 'autoID-n' wäre z.B. ein Kandidat.Hier könnten nun jederzeit neue Links dazukommen. Wie finde ich raus welcher davon neu ist und vor allem
Wird wohl sowas wie COM werden ...wie betätige ich den Ansehen button? Es gibt ja keine URL für diesen Button. Ich muss es irgendwie anhand der ID aufrufen
Ist ein Forum-Filter der 'pöse Links' zerhackt, und Moderatoren das anschließende "find&puzzle" als Lebenszeitvernichter überlässt.Warum übrigens die "://" nach dem https in dem Codesegment verschwinden beim Posten, weiss ich nicht.
Re: Website auf Neuen Text suchen und Button betätigen
wenn du nur auf den Button "Ansehen" klicken möchtest, was ist denn dein Begehren? Möchtest du nur z.B dieses Bild <img alt="" src="./x_files/41VRRURqPlL._1123_.jpg"> herunterladen? oder evt. nur ansehen?
Re: Website auf Neuen Text suchen und Button betätigen
Wenn man den Button anklickt, geht ein kleines Popupfenster auf. Möchte eigentlich nur das. In diesem neuen Fenster muss dann nochmal ein Button gedrückt werden aber das krieg ich dann auch selber hin.
Re: Website auf Neuen Text suchen und Button betätigen
Kann mir denn niemand helfen? Irgendein Codeschnipsel an dem ich rumbasteln kann?