Kategorien

    [Tool] Amazon WHD Crawler (für das einfachere Erstellen von Angeboten) in C#

    Hierbei handelt es sich um einen indirekten Port der PHP-Fassung zu C#.

    Das bedeutet, dass der Crawler nun lokal auf jedem Rechner als eigene Anwendung läuft.

    Aus diesem Grund ist das ganze auch OpenSource, jedoch habe ich mich noch für keine Lizenz entschieden, weswegen ich mir derzeit noch alle Rechte vorbehalte.

    Coding-Aufwand betrug gute 5,5 Stunden, ein Großteil ging wegen dem seltsamen Charset-Encoding von C# drauf.

    Beste Kommentare

    Verfasser

    Github Repository: github.com/mai…ows

    Relase-Übersicht (& Download): github.com/mai…ses

    Kurzanleitung:

    1) Ihr tragt unter URL einen Link ein zu einem Amazon-Produkt ein (z.B. amazon.de/AVM…SG/ )
    2) Ihr klickt auf "Beginne Crawling"
    3) Ihr bekommt folgende Ausgabe (rechts - STRG + A geht nicht, ihr müsst es also mit der gedrücken linken Maustaste auswählen):




    4) Profit

    Bearbeitet von: "Mario" 1. Jul 2016
    42 Kommentare

    Verfasser

    Github Repository: github.com/mai…ows

    Relase-Übersicht (& Download): github.com/mai…ses

    Kurzanleitung:

    1) Ihr tragt unter URL einen Link ein zu einem Amazon-Produkt ein (z.B. amazon.de/AVM…SG/ )
    2) Ihr klickt auf "Beginne Crawling"
    3) Ihr bekommt folgende Ausgabe (rechts - STRG + A geht nicht, ihr müsst es also mit der gedrücken linken Maustaste auswählen):




    4) Profit

    Bearbeitet von: "Mario" 1. Jul 2016

    Nochmal?

    Verfasser

    Newsletter123

    Nochmal?



    PHP != C#

    Das Ding hier ist für jeden DAU bedienbar (hoffe ich).

    Dann kann ich ja meinen Hosting-Dienst einstellen 9903097-1qcJ9 Nice.
    Verarbeitet der Crawler auch mobile Links und mobile offer-listings?
    Außerdem ist das PHP != C# etwas untertrieben. Auch wenn ich C# nicht mag: C# >> PHP

    Verfasser

    ExtraFlauschig

    Verarbeitet der Crawler auch mobile Links und mobile offer-listings?



    Ähm, jein. Ich habe deinen Pull-Request so halb umgesetzt, danke dafür nochmals.

    Du kannst das im Array jetzt ganz einfach selbst ändern, schau' dir einfach mal die Methode extract_asin(string URL) an.

    Kann hier evtl. jemand einen Screen des Hauptprogramms einstellen? Finde das Ganze recht interessant, aber habe gerade nur Linux am Laufen...

    Verfasser

    Draylin

    Kann hier evtl. jemand einen Screen des Hauptprogramms einstellen? Finde … Kann hier evtl. jemand einen Screen des Hauptprogramms einstellen? Finde das Ganze recht interessant, aber habe gerade nur Linux am Laufen...



    3a138fe2-2772-11e6-9d17-9efd1edfc05e.PNG

    Dürfte aber mit Mono auch unter Linux laufen.

    Mario

    Dürfte aber mit Mono auch unter Linux laufen.


    Ich hatte nur überlegt, das auf QT mit C++ zu portieren. Aber mit meiner Motivation wird das sicher nichts.

    Wow sehr sehr geil
    Du schreibst du hast das ganze auch in php vorliegen?
    Würde das php bevorzugen für den privaten Gebrauch
    Danke hierfuer! Respekt.

    Verfasser

    Draylin

    Ich hatte nur überlegt, das auf QT mit C++ zu portieren. Aber mit meiner Motivation wird das sicher nichts.


    Spar' dir die Zeit, ich wollte nur mal wieder in C# reinkommen.

    Hoermis

    Wow sehr sehr geil :)Du schreibst du hast das ganze auch in php vorliegen? Würde das php bevorzugen für den privaten Gebrauch :)Danke hierfuer! Respekt.



    github.com/mai….de

    Verfasser

    Ok, also muss da noch ein Trim dran und was da crasht, weiß ich gerade nicht willusch, er versucht auf einen Namen zurückzugreifen, den es nicht gibt. Mal manuell checken...

    Ach ist das schon wieder ein Mist, I am working on it.

    Habs mal auf meinen Server geladen, aber gibt immer nen 500er Fehler, sobald ich den Link "Senden" möchte...
    Ne Idee?

    Verfasser

    Hoermis

    Habs mal auf meinen Server geladen, aber gibt immer nen 500er Fehler, sobald ich den Link "Senden" möchte... Ne Idee?



    Kann an der PHP Version liegen.

    Ansonsten sollte der Crawler eigentlich out of the box funktionieren, ggf. mal das Error-Reporting anmachen.

    Bei manchen PHP-Versionen werden die Sprungmarken nicht unterstützt, bei anderen geht die Array-Definition in der Form nicht.

    Verfasser

    willusch




    Sollte gefixt sein, neuer DL Link steht oben.

    Hoermis

    Habs mal auf meinen Server geladen, aber gibt immer nen 500er Fehler, sobald ich den Link "Senden" möchte... Ne Idee?




    HMmm, auf Zwei Servern probiert, die einen unterschiedlichen rls Stand haben und unterschiedliche PHP Versionen, beidemal nen 500er Error :s

    Verfasser

    Hoermis

    HMmm, auf Zwei Servern probiert, die einen unterschiedlichen rls Stand haben und unterschiedliche PHP Versionen, beidemal nen 500er Error :s



    Ich schau' morgen nochmal in den Quelltext rein. Aber 500 ist meist eigentlich immer nur ein fehlendes Error-Reporting.

    Mit wäre es halt einfach zu wissen, was fehlt.

    Hoermis

    HMmm, auf Zwei Servern probiert, die einen unterschiedlichen rls Stand haben und unterschiedliche PHP Versionen, beidemal nen 500er Error :s



    Ich schaue morgen mal genauer rein



    Klappt mit nem Mac nicht oder?

    Bearbeitet von: "Nikeboy48" 1. Jun 2016

    Verfasser

    Nikeboy48

    Klappt mit nem Mac nicht oder?



    Mit Mono vielleicht: mono-project.com/doc…sx/

    Nikeboy48

    Klappt mit nem Mac nicht oder?



    Also jetzt für den Informatik Laien, einfach Mono runterladen und dann direkt den Crowler runterladen?

    Verfasser

    Nikeboy48

    Also jetzt für den Informatik Laien, einfach Mono runterladen und dann direkt den Crowler runterladen?



    Mono runterladen, installieren und dann die Exe über die Konsole mittelns Mono starten, richtig.

    Nikeboy48

    Also jetzt für den Informatik Laien, einfach Mono runterladen und dann direkt den Crowler runterladen?



    Alles klar, vielen Dank!

    Verfasser

    Nikeboy48

    Alles klar, vielen Dank!



    Habe es gerade an meinen Linux-Notebook ausprobiert. Das Tool geht soweit, allerdings ist das mit dem Charset-Encoding etwas buggy, weswegen Idealo vermutlich nicht funktioniert und die Sonderzeichen fehlen. Weiß der Teufel, warum das so ist. Ich komme damit bei C# nicht wirklich klar.

    I am not good at programming, because I don't C# - badumm tzz.

    Ja, das ist mal hot.. !! Danke Mario, damit kann man nun selber Suchen... Geil, obwohl, es wird härter..



    Damit Strg-A funktioniert füge diese Funktion in deinem Code hinzu und hänge das KeyDown-Ereignis der Textboxen an diese Funktion.

    Bearbeitet von: "somebody" 1. Jun 2016

    Funktioniert bei mir nur bei gut jedem fünften Artikel - meistens bekomme ich eine Fehlermeldung

    "Unbehandelte Ausnahme in der Anwendung (...) Der Index lag außerhalb des Bereichs. Er darf nicht negativ und kleiner als die Auflistung sein.Parametername: startIndex"

    Bearbeitet von: "Bruddha" 1. Jun 2016

    Verfasser

    "Unbehandelte Ausnahme in der Anwendung (...) Der Index lag außerhalb des Bereichs. Er darf nicht negativ und kleiner als die Auflistung sein.Parametername: startIndex"



    Hast du mal einen Link da, der nicht geht?

    Verfasser

    Mario



    Ach Gott, wie konnte ich den Fall nur vergessen, danke, wird, wenn ich wieder wach bin, gefixt.

    Kann es sein, dass bei dem Idealo-Vergleich die Amazonpreise nicht rausgenommen werden? Hatte jetzt bei einigen Artikeln den Fall dass Amazon und Idealopreis identisch waren, was ja logisch ist weil bei Idealo der Amazonpreis der beste war.

    Und ich hab auch mit der neuen Version auch noch des öfteren Abstürze wenn ich mit dem Crawling beginne.

    Bearbeitet von: "IchRoque" 4. Jun 2016

    Klappt mit folgendem Link leider immer noch nicht:
    amazon.de/gp/…me=

    Verfasser

    IchRoque

    Kann es sein, dass bei dem Idealo-Vergleich die Amazonpreise nicht rausgenommen werden? Hatte jetzt bei einigen Artikeln den Fall dass Amazon und Idealopreis identisch waren, was ja logisch ist weil bei Idealo der Amazonpreis der beste war.Und ich hab auch mit der neuen Version auch noch des öfteren Abstürze wenn ich mit dem Crawling beginne.




    Ja, weil das einen weiteren Seitenaufruf bräuchte.

    Beispiele?


    raty

    Klappt mit folgendem Link leider immer noch nicht:https://www.amazon.de/gp/product/B00YPS768C/ref=olp_product_details?ie=UTF8&me=



    Das wird auch nie klappen, weil ich den Crawler dafür etwas falsch aufgebaut habe. Das ist generell bei allen Produkten der Fall, bei denen es Variationen mit nem Dropdown gibt, leider.

    Danke fürs Tool

    Bearbeitet von: "Larry" 26. Jun 2016

    Verfasser

    In weiser Voraussicht, dass es am Prime-Day wieder eine Rabattaktion gibt, habe ich das Tool jetzt mal aktualisiert und dem ganzen eine Funktion verpasst, welche es erlaubt, einen Rabatt einzutragen:

    10323523-B7Gtp

    Das Ergebnis sieht dann so aus:


    10323523-ztTjZ
    LG 27UD68-W mit 68,58 cm (27 Zoll) Computer-Monitor (HDMI, HDCP, DisplayPort, 5 ms Reaktionszeit, Ultra HD 4 K) Weiß

    Neupreis auf Amazon.de: 549,00 EUR
    Idealo (LG 27UD68): 462,23  EUR

    Akzeptabel - 442,29 EUR * 0,80 = 353,83 EUR
    Sehr gut - 476,40 EUR * 0,80 = 381,12 EUR
    Wie neu - 526,00 EUR * 0,80 = 420,80 EUR


    (Die Zunahme in der Größe der *.exe Datei ist dem kleinen Logo geschuldet... ;))

    Kann ich da auch mehrere URL einstriagen um eine ganze Liste zu crawlwn?

    Verfasser

    Warehouse-Sniper

    Kann ich da auch mehrere URL einstriagen um eine ganze Liste zu crawlwn?



    Nope, muss nacheinander erfolgen.
    Dein Kommentar
    Avatar
    @
      Text
      Top Diskussionen
      1. 15 fach Punkte abgelehnt bei Payback wegen erneuter Bestellung!1824
      2. tomtop.com erstattet nicht99
      3. Sky918
      4. NFL Gamepass Thread 2017114582

      Weitere Diskussionen