Suche Software Entwickler für ein Ebay Tool

Hallo,
suche ein Ebay Tool für Überwachung auf neu eingestellte Sofort-Kaufen Artikel. Sobald ein Artikel eingestellt wird der meiner Suche entspricht (evtl. sogar über Ebay API) gibt er mir durch öffnen eines neuen Fenster im Browser visuell und durch einen Ton akustisch Bescheid das ein neuer Artikel gerade eingestellt wurde. Momentan benütze ich die Browsererweiterung „Auto Refresh Plus“, dieses erneuert alle Sek. oder Minuten die Seite, aber sonst kann ich zumindest die Erweiterung nicht einstellen das es mich auf einen neu eingestellten Artikel hinweist. Gibt es so ein Tool oder kann jemand von Euch ein vorhandenes erweitern? Danke.

… …
[Verschoben: FremdsprachenSoftware allgemein - Mod Kreszentia]

hi,

reicht nicht eine einfache Variante?
Nen Ton, wenn sich der erste Artikel der Liste ändert?

Das wäre verhältnismäßig schnell erledigt.
Sonst müsste man eben alle Artikel noch abspeichern und durchwühlen, ob er nicht etwa verschwunden ist, statt neu dazu gekommen.
Man müsste natürlich ‚neuste zuerst‘ sortieren.

Beispiel:

Browseraddon Greasemonkey oder Tampermonkey

// ==UserScript==
// @name         eBay Suche
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.ebay.de/sch/i.html*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant       GM.setValue
// @grant       GM.getValue
// ==/UserScript==


'use strict';

var temp = document.getElementById('srp-river-results').getElementsByClassName('s-item__wrapper')[0].getElementsByTagName('a')[1].href.split('?');
var addr = await GM.getValue("eBayaddr", 0)

if (addr==temp[0]) {
// alles wie gehabt
}
else {
// geändert
GM.setValue("eBayaddr", temp[0]);
beep();
}
setTimeout(function(){ location.reload(); }, 60*1000);

function beep() {
var audio = new Audio('https://media.geeksforgeeks.org/wp-content/uploads/20190531135120/beep.mp3');
audio.play();
}

grüße
lipi

3 Like

Hi Lipi,
danke für Deine Hilfe :slight_smile:
Also Suche natürlich „Neu eingestellt“ oben, dann „Auto Refresh Plus“. So hatte ich es bisher. jetzt habe ich auf Chrom Tambermonkey installiert. komme aber auch nicht weiter, im Tab daneben läuft ebay mit Auto Refresh. was muss ich einstellen das Tambermonkey auf die Seite zugreift? wie gehts weiter?
Danke

hi,

erstmal das Script so reinkopieren, wie es hier steht. (und nicht nur halb. Das obere ist nicht auskommentiert, es gehört dazu und ist wichtig.)
Dann speichern und gut ist.
Bei den Einstellungen musst du nix machen.
es läd selbst alle 60 Sekunden neu, das Andere mach lieber aus.

Wichtig wäre nur, auf der eBay Seite einmal irgendetwas zu machen. Auf Suchen drücken etwa, sonst geht der Sound nicht.

grüße
lipi

1 Like

Hi,
Du meinst so?


ebay seiten daneben, auto refresh aus, suchen lassen, warten 3 min. da funzt nix, seite aktualisiert 4 neue auktionen sind in der zwischenzeit gekommen

naja fast.
ist es nicht selbsterklärend, dass die Zeilen nicht doppelt da stehen sollten?

na egal. Lösch bitte vorher jeglichen Text und füge dann das Script ein.
Am ende sollte dann nach Möglichkeit nur der oben gepostete Text drin stehen und nichts anderes zusätzlich.

Es wird eine Variable benötigt, die über den Seitenaufruf hinaus gespeichert bleibt. Dafür sind die Zeilen //grant zuständig.
Aber nur die oberen werden verarbeitet.

Die unteren, die wichtig wäre, werden bei dir ignoriert.
Damit geht dann aber alles nicht.

grüße
lipi

1 Like

tut mir leid, kann dir nicht folgen.
bitte schreib mir in einem feld genau das und nur das was ich in dem Editorfeld eingeben soll

Äh, er hat doch geschrieben, du sollst genau den Code eingeben, den er dir oben auf dem Silbertablett serviert hat. Wenn du auf das Wort Beispiel oben tippst, wird etwas aufgeklappt, das hat einen grauen Hintergrund. Genau den Code musst du kopieren, was ist so schwer daran?

2 Like

genau das was ich im Feld Beispiel sehe habe ich auch eingefügt, siehe mein allererstes bild oben

Oh, tut mir leid, hatte einen totalen Fehler beim Denken.
hab nur das untere einkopiert und das obere dringelassen weil ich dachte wäre das gleiche.
tut mir leid, werde mal testen.
Melde mich dann wieder.
Tut mir leid für meinen blackout :frowning:

Hi,
habe heute den ganzen Tag laufen lassen.
Es funktioniert wirklich super.
Habe den Plopp durch ein Sektglas anstoßen Geräusch getauscht, das klinkt um einiges Entspannter.
Vielen Dank an Lipi das Du mir das Script geschrieben hast?
Kann ich Dir was gutes Tun mit einer kleinen Spende?
Danke auch an Christa die mir den Kopf gewaschen hat weil ich mich so dämlich angestellt habe :see_no_evil:

1 Like

hi,

sehr schön.
Dann wünsche ich mal viel Erfolg bei der Schnäppchenjagt.

Die 60 sind die Sekunden für das Neuladen der Seite (60*1000, da es Millisekunden sind)
Stell das bitte so hoch wie möglich ein, um nicht unnötig Traffic zu produzieren, wenn du das Stundenlang laufen lässt.

grüße
lipi

1 Like

Hi Lipi,
komisch ist, das Script funktionierte gestern super, immer schön einen Ton abgegeben. Heute bring ich es überhaupt gar nicht hin, es gibt keinen Ton ab wenn ein neuer Artikel eingestellt wird.
Das Script ist immer aktiv, wie an der 1. zu sehen ist
icon
Er tut auch alle 15 Sekunden aktualisieren, so wie ich es eingestellt habe.
Aber einen Ton gibt es heute nicht ab, obwohl der Lautsprecher am Notebook eingeschaltet ist.
Habe das Script nochmal hier


wo liegt mein Fehler?
Danke

Eigentlich hatte lipi geschrieben:

:roll_eyes:

1 Like

Zum Testen ist 15Sek. eine gute Zeit. Such mir dazu eine Kategorie in der alle 15Sek. fast immer neue Artikel eingestellt werden. Habe eine 50Mbit/s Festnetz Flat :grin:

Hi Lipi, du hast wieder recht gehabt.
Habe eine „Suche in der Kategorie“ in den Favoriten.
In der Suche habe ich Suchfilter wie z.B. das es nur Artikel in einer bestimmten Preiskategorie usw. suchen soll.
Wenn ich diese Suche in den Favoriten aufrufe, dann machte die Ebay Seite auf. Oben im Suchfeld steht aber nur die Kategorie in der ich die Suche eingestellt habe, wenn ich dann auf „Finden“ rechts oben klicke dann sucht er, aber nur das was ich im Suchfeld eingegeben habe (Foto bmw teile) allerdings sucht er nicht die Preisspanne. Wenn ich jetzt auf „Finden“ klicke ist mein Preissuchfilter weg (Foto 5-10000€), dann muss man einfach auf „Enter/Return“ und der Filter ist wieder da. Dann funktioniert es auch :grin:. Danke für Deine/Eure Geduld.

Natürlich nicht „Enter/Return“ sondern „Zurück oder Zurückkehren“ (Pfeil nach Links) beim Browser

es geht dabei nicht um dich. Die Suchseite besteht weitgehend aus Text, das schafft auch eine Gammelleitung alle 15 Sekunden.
Aber du startest dabei auch jedes mal die Suche. Du verursachst beim Anbieter also eine Last die locker 100 normalen Usern entspricht.

Das wird ihn nun wegen dir nicht unbedingt in die Knie zwingen, gehört sich aber schlicht nicht. Man verhält sich rücksichtsvoll und wählt daher eine Zeitspanne die angemessen ist, wenn man das schon automatisch machen will.

wie schon gesagt: das Script kann da nix für. Chrome blockiert Audioausgaben für neue Seiten.

grüße
lipi

2 Like

Hi Lipi,
danke für den Hinweis.
Wie schon geschrieben, 15Sek. ist nur für Test gewesen.
Wollte für den Testintervall nicht so einen langen Zeitraum dazwischen.
Jetzt, da ich weiß das alles gut funktioniert, habe ich schon auf 2Min. geändert, denke das ist perfekt.
Das Script funktioniert jetzt schon super, perfekt wäre es wenn es möglich wäre zusätzlich zum Ton auch noch einen neuen Tap mit der Auktion oder auch ein Hinweisfeld im Vordergrund zu öffnen? Das wäre die Krönung für das Script. Danke

hi,

Das Script geht zwar, aber eBay geht nicht.
Die stellen neue Artikel nicht zwangsweise oben neu ein, sondern auch mal verspätet - und dadurch - an 2. oder 3. Stelle.

Das neue macht folgendes:
es prüft die ersten 20 Artikel, und speichert sie.
wird unter diesen einer hinzu gefügt, meldet es sich.
Bis zur maximalen Anzahl neuer Tabs, werden sie geöffnet, darüber hinaus kommt eine Abfrage.
Einfärbungen: rot sind neue Artikel, grün sind bereits bekannte Artikel.
Dinge, die verändert und angepasst werden können, stehen oben.

sehr gut möglich, und ehrlich gesagt auch wahrscheinlich, dass sich da irgendwelche Fehler finden lassen.

einmal in Neu:
// ==UserScript==
// @name         eBay Suche
// @version      0.2
// @description  frag lieber nicht...
// @author       LiPi
// @match        https://www.ebay.de/sch/i.html*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant       GM.setValue
// @grant       GM.getValue
// ==/UserScript==

'use strict';
/* *SETUP* */
var to_beep = 1; //Ton ein (1) oder aus (0)
var intervall = 2; //Intervall in Minuten
var Tab_max = 4; //maximale Anzahl zu öffnender Seiten
var Artikel_num = 20; // maximale Anzahl gespeicherter Artikel.
var audio_dat = 'https://media.geeksforgeeks.org/wp-content/uploads/20190531135120/beep.mp3'
/* ***** */


var time_old = await GM.getValue("eBay_Zeit", Date.now());
var time_aktuell = Date.now();
var time_elapsed = 2*intervall*60*1000;
Artikel_num--;

if ((time_old+time_elapsed)>time_aktuell) { //Zeit prüfen
    //liegt in der Zeitspanne

    // maximale Einträge anpassen
    var URLs=document.getElementById('srp-river-results').getElementsByClassName('s-item__wrapper'); //Adresse: .getElementsByTagName('a')[0].href.split('?')
    if (URLs.length < Artikel_num) {
        var max_i = URLs.length;
    }
    else max_i = Artikel_num;

    // prüfen, was neu ist und schön bunt machen
    var New_Num = 0;
    var New_Num_inv = 0;
    var Num_array=[];

    for (let i=0;i<=max_i;i++) { //jeder aktuelle Eintrag
        var j_max = await GM.getValue("eBay_URL_old_max", 0);
        var temp = URLs[i].getElementsByTagName('a')[0].href.split('?')[0]
        for (let j=0;j<=j_max;j++) { //jeder alte Eintrag
            var URL_old = await GM.getValue("eBay_URL_old_"+j, 0);
            // alert('old_URL: '+URL_old+'     aktuell '+temp);
            Num_array[New_Num]=temp;
            URLs[i].style.cssText = "background-color: lavenderblush";
            if (temp==URL_old) {
                URLs[i].style.cssText = "background-color: lightcyan";
                Num_array[New_Num]=0;
                New_Num_inv++;
                break;
            }
        }
        New_Num++;
    }
    //fertig. Tschüss und beeps!
    if (New_Num-New_Num_inv>0) {
        if (to_beep) await beep(); //(to_beep || !to_beep) ist eine sinnlose Frage...
        var alert_bypass = 0;
        for (let i = 0;i<New_Num;i++) {
            if ((New_Num-New_Num_inv>=Tab_max)&&!alert_bypass) { // zu viel neues
                var alert_str = (New_Num-New_Num_inv)+" Neue Artikel. Dennoch öffnen?";
                var alert_load = await confirm(alert_str);
                if (!alert_load) {
                    break;
                }
                alert_bypass=1;
            }
            if (Num_array[i]!=0) {
                window.open(Num_array[i]);
            }
        }
    }
}
else {max_i = Artikel_num;
      URLs=document.getElementById('srp-river-results').getElementsByClassName('s-item__wrapper'); //Adresse: .getElementsByTagName('a')[0].href.split('?')
     }

setTimeout(function(){ location.reload(); }, intervall*60*1000);
// speichern der neuen Artikel
for (let i=0;i<=max_i;i++) {
    GM.setValue("eBay_URL_old_"+i, URLs[i].getElementsByTagName('a')[0].href.split('?')[0]);
}
GM.setValue("eBay_URL_old_max", max_i);
GM.setValue("eBay_Zeit", time_aktuell);

function beep(){
    const audio = new Audio(audio_dat)
    return new Promise(res=>{
        audio.play()
        audio.onended = res
    })
}

grüße
lipi

1 Like