Ankündigung

Einklappen
Keine Ankündigung bisher.

CURL; POST Anfrage via SSL

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • CURL; POST Anfrage via SSL

    Hallo Leute,

    seit langem stehe ich wieder an einem Problem wo ich leider nicht mehr weiter komme und brauche da Eure Unterstützung.
    Die Entscheidung nach Lösungsansätze fiel nicht gleich hierher. Bevor ich dieses Thema erstellt habe, habe ich Extrems (3 Monate lang) selbst sehr lange getüftelt etc. Ich habe auch das Internet reichlich nach Lösungsansätzen durchstöbert aber alles führte nicht zum Ziel.

    Allerdings vorweg an Euch !!!
    Ich habe im Internet einen Beitrag gefunden, wo jemand zufälligerweise fast das gleiche vorhaben hatte. Leider hatte ich mich da etwas zufrüh gefreut gehabt.
    Denn der Beitrag wurde direkt geschlossen, da derjenige diesen Beitrag auf mehrere Forum gepostet und somit die Forenregeln missbraucht hatte. War ja selbstverständlich.

    Daher an Euch/Allen: Ich bin nicht derjenige und ich habe mit dem Beiträgen etc. von demjenigen nichts am Hut.
    Ich werde die Seiten von demjenigen hier veröffentlichen die ich dazu gefunden habe:
    1. http://phpforum.de/forum/showthread.php?t=283242
    2. https://www.php.de/forum/webentwickl...-funktionieren


    So nun zurück zum eigentlichen Thema:

    Stichwort ist eigentlich "DPMA".
    Mein Ziel ist es meine eigene eingetragene Marken aus der DMPA - Internetseite automatisiert zu analysieren.
    Mir ist es lästig und sehr umständlich ständig einzelnd für jede Marke die DPMA-Seite zu besuchen und dort gewisse Analysen zu treiben.
    Da habe ich mir gedacht, dass ich im PHP durch einen Script das ganze etwas vereinfachen könnte. Allerdings komme ich da nicht so ganz zu meinem Ziel.

    Mein letzter versuchter Ansatz ist wie folgt:
    PHP-Code:
    function get_web_page($url) {
        
    $ch curl_init();

        
    curl_setopt_array($ch, array(
            
    CURLOPT_URL            => $url,
            
    CURLOPT_SSL_VERIFYPEER => false,
            
    CURLOPT_SSL_VERIFYHOST => false,
            
    CURLOPT_POST           => true,
            
    CURLOPT_POSTFIELDS     => array("wm" => "nike"),
            
    CURLOPT_HEADER         => false,
            
    CURLOPT_RETURNTRANSFER => true,

            
    CURLOPT_FOLLOWLOCATION => true,
            
    CURLOPT_ENCODING       => "",
            
    CURLOPT_USERAGENT      => "Mozilla-da-gorilla",
            
    CURLOPT_AUTOREFERER    => true,
            
    CURLOPT_CONNECTTIMEOUT => 120,
            
    CURLOPT_TIMEOUT        => 120,
            
    CURLOPT_MAXREDIRS      => 10,
            
    CURLOPT_COOKIEFILE     => "/cookies2.txt",
            
    CURLOPT_COOKIEJAR      => "/cookies2.txt",
            
    CURLOPT_CERTINFO       => array("VeriSignClass3PublicPrimaryCertificationAuthority-G5.crt")
        ));

        
    $content curl_exec($ch);
        
    $err     curl_errno($ch);
        
    $errmsg  curl_error($ch);
        
    $header  curl_getinfo($ch);
        
    curl_close($ch);

        
    $header['errno']   = $err;
        
    $header['errmsg']  = $errmsg;
        
    $header['content'] = $content;
        return 
    $header;
    }

    // $test = get_web_page("https://register.dpma.de/DPMAregister/marke/einsteiger");
    $test get_web_page("https://register.dpma.de/DPMAregister/marke/trefferliste");
    $test2 get_web_page("https://register.dpma.de/DPMAregister/marke/trefferliste.kopf.form");
    $test3 get_web_page("https://register.dpma.de/DPMAregister/marke/trefferliste");

    print_r($test3); 
    Zum Testen habe ich in der Zeile 9 fiktiv nach der Marke "Nike" gesucht. Die Marke ist vorerst unwichtig. Mir geht es vorerst nur um den Trefferliste.
    Ich habe die Cookies als TXT und den Zertifikat als CRT-File auf dem gleichen Pfad kopiert wo sich das PHP-File selbst befindet um die Sache etwas zu vereinfachen.
    Mit der obigen Lösung gelange ich auf die Trefferliste jedoch ist der Inhalt der Trefferliste 0 und somit auch ohne einem Inhalt.
    Der CURL liefert dort einen Button "Auswahl Anzeigen". Wenn ich das Button anklicke, öffnet sich die Trefferliste und der Inhalt erscheint dann auch.
    Aber das ist nicht mein Ziel. Die Listeninhalt soll direkt kommen, wenn ich mein Script ausgeführt habe.

    Ich hoffe Ihr könnt mir helfen. Stehe echt an einem Problem und bin ratlos.
    Ich bedanke mich im Voraus für die Mühe.

    Mit freundlichen Grüßen
    Daniel

  • #2
    Der CURL liefert dort einen Button "Auswahl Anzeigen"
    Ich bekomme Curl und Botton nicht zusammen, auch nicht bei Deinem Script.
    Liefert Curl eine Webseite mit einem Button? Willst Du diese dann nicht posten?

    Zudem möchte ich Dich auf die Api hinweisen:

    https://www.dpma.de/docs/recherche/d...schreibung.pdf

    welche Du offensichtlich nicht nutzt.

    Kommentar


    • #3
      Zitat von tomBuilder Beitrag anzeigen

      Ich bekomme Curl und Botton nicht zusammen, auch nicht bei Deinem Script.
      Liefert Curl eine Webseite mit einem Button? Willst Du diese dann nicht posten?

      Zudem möchte ich Dich auf die Api hinweisen:

      https://www.dpma.de/docs/recherche/d...schreibung.pdf

      welche Du offensichtlich nicht nutzt.

      Hallo,

      danke für die Unterstützung bzgl. API.

      Nun es ist so. Wenn man eine Marke sucht, gelangt man auf eine neue Trefferseite mit der Überschrift: Suchergebnisse.
      Dort ganz im unteren Abschnitt ist ein Button "Auswahl anzeigen".
      Wenn ich mein Script ausführe, erscheint dieser Button und paar weitere HTML-Tags auf meiner Seite.
      Dieser Button hatte ich damit gemeint. Das ist aber nicht worauf ich hinaus wollte. Also gleich vergessen was und wozu dieser Button dient .

      Zum API:
      Ich habe mir den Link angeschaut und sogut wie nichts darin verstanden.
      Soweit wie ich es verstanden habe, soll man sich teuer dort auf irgendeine Seite (selbst das ist undefiniert) registrieren und dann kann man die API nutzen.
      Wie das dann funktioniert ist auch nirgends deklariert bzw. dokumentiert.

      Ich möchte mich aber nirgendswo anmelden und gar für bezahlen, wenn man das auch so regeln kann.

      Was bekommst du denn angezeigt?
      Was genau funktioniert bei dir nicht mit dem oberen Script?

      MfG
      Daniel

      Kommentar


      • #4
        Wenn ich mein Script ausführe, erscheint dieser Button und paar weitere HTML-Tags auf meiner Seite.
        Wieso führst Du Dein Script nicht mal ohne Webseite aus, um das Problem einzugrenzen ?
        Wenn Du eine Webseite anfragst, kommt auch eine Webseite, soviel ist klar;
        Wenn eine Api vorhanden ist nutzt man diese.


        Soweit wie ich es verstanden habe, soll man sich teuer dort auf irgendeine Seite (selbst das ist undefiniert) registrieren und dann kann man die API nutzen.
        Wie das dann funktioniert ist auch nirgends deklariert bzw. dokumentiert.
        Die irgendeine Seite ist das dpma, von Geld steht da nichts.


        Alles in allem hat Deine Problembeschreibung nicht mit fortgeschritten zu tun, und es bleibt fraglich, ob eine Abfrage über curl beim DPMA überhaupt rechtens ist.

        Kommentar


        • #5
          MOD: Verschoben von PHP-Fortgeschritten
          The string "()()" is not palindrom but the String "())(" is.

          Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
          PHP.de Wissenssammlung | Kein Support per PN

          Kommentar


          • #6
            Zitat von tomBuilder Beitrag anzeigen

            Wieso führst Du Dein Script nicht mal ohne Webseite aus, um das Problem einzugrenzen ?
            Wenn Du eine Webseite anfragst, kommt auch eine Webseite, soviel ist klar;
            Wie meinst du das genau?
            Soll ich mein Script unter Komandozeile ausführen?
            Was würde mir das bringen?

            Zitat von tomBuilder Beitrag anzeigen
            Wenn eine Api vorhanden ist nutzt man diese.
            Kannst du mir dabei helfen?
            Wie kann ich da vorgehen?
            Wo kann ich mir die API runter laden?

            Zitat von tomBuilder Beitrag anzeigen
            Die irgendeine Seite ist das dpma, von Geld steht da nichts.
            ich habe mich bei den Links die auf der PDF-Datei waren weiter geklickt und habe gelesen das die Jahresgebühr 2500 € und einmalig 250 € für die Registrierung haben wollen.
            Hinzukommt, dass die Nutzung trotz Zahlung auf 1000 Datensätze beschränkt sind.


            Zitat von tomBuilder Beitrag anzeigen
            Alles in allem hat Deine Problembeschreibung nicht mit fortgeschritten zu tun, und es bleibt fraglich, ob eine Abfrage über curl beim DPMA überhaupt rechtens ist.
            Wieso sollte es nicht rechtens sein?
            Die Seite ist frei zugänglich. Ich manipuliere ja da nichts.

            Kommentar


            • #7
              Zitat von hausl Beitrag anzeigen
              MOD: Verschoben von PHP-Fortgeschritten
              Hallo Moderator,

              wieso ist dieser Beitrag nicht für die Fortgeschrittenen geeignet?
              Das Problem kann doch kein Einsteiger lösen oder etwa doch?

              MfG
              Daniel

              Kommentar


              • #8
                Darum geht es nicht. Wenn man sich zB deinen Beitrag #6 anschaut, und die Fragen die du da stellst, erkennt man schöne das DU nicht fortgeschritten bist. Nicht falsch verstehen, das ist auch absolut nichts Böses und auch ok so, dafür ist das Forum ja auch da, aber nur weil du ein Problem nicht alleine lösen kannst, solltest du nicht davon ausgehen das du oder dein Problem deswegen forgeschritten ist.

                Es sind in Einsteiger-Froum auch genug Profis unterwegs die dein Posting lesen und dir ev. dabei helfen werden.
                The string "()()" is not palindrom but the String "())(" is.

                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar


                • #9
                  Zitat von hausl Beitrag anzeigen
                  Darum geht es nicht. Wenn man sich zB deinen Beitrag #6 anschaut, und die Fragen die du da stellst, erkennt man schöne das DU nicht fortgeschritten bist. Nicht falsch verstehen, das ist auch absolut nichts Böses und auch ok so, dafür ist das Forum ja auch da, aber nur weil du ein Problem nicht alleine lösen kannst, solltest du nicht davon ausgehen das du oder dein Problem deswegen forgeschritten ist.

                  Es sind in Einsteiger-Froum auch genug Profis unterwegs die dein Posting lesen und dir ev. dabei helfen werden.
                  Nein, ich verstehe es schon nicht falsch.
                  Naja Einsteiger bin ich schon lange nicht mehr. Habe einige Jahre im OOP-Bereich sehr komplexere Projekte in PHP geschrieben. Jedoch stehe ich an einem sehr merkwürigen Problem, wo ich denke, dass dies nur die Profis / Experten lösen können. Aber ich nehme gerne hilfen von jeden an.

                  Da bin ich mal gespannt. Mir macht es nichts aus, wohin mein Beitrag landet ... Hauptsache die Profis können mir helfen.
                  Stand schon lange nicht mehr an so einem schwierigen Fall.

                  Im Beitrag #6 die Fragen deuten eigentlich nichts. Vielleicht habe ich mich da etwas ungeschickt ausgedrückt. Wollte damit nur sagen, dass die Ausgabe über Web oder Komandozeile kein unterschied bringen.

                  Ich hoffe die Profis können mir helfen.
                  Mein Latein ist echt am Ende, da ich Extrems nun getüfftelt habe.

                  MfG
                  Daniel

                  Kommentar


                  • #10
                    Ich denke dein Vorhaben wird nicht umzusetzen sein. Die verlangen ja nicht umsonst eine Gebühr.
                    Das automatische Abfragen von Daten lässt sich unterbinden und dagegen kannst du dann halt nichts machen.

                    Kommentar


                    • #11
                      Zitat von protestix Beitrag anzeigen
                      Ich denke dein Vorhaben wird nicht umzusetzen sein. Die verlangen ja nicht umsonst eine Gebühr.
                      Das automatische Abfragen von Daten lässt sich unterbinden und dagegen kannst du dann halt nichts machen.
                      Ich danke für deine Antwort.
                      Inwiefern kann man solche Abfragen unterbinden?
                      Hast du da 1-2 Beispiele für mich?
                      Gibt es da konkrete Möglichkeiten oder spikulierst du darauf, nur weil man dafür Gebühr verlangt?
                      Die Gebühr und die API Möglichkeiten sind etwas ganz anderes als mein vorhaben. Die API bietet viel mehr als was ich erreichen möchte.

                      MfG
                      Daniel

                      Kommentar


                      • #12
                        Personen, die die allgemeine Nutzung dieses Dienstes durch eine ungewöhnliche hohe Anzahl manueller oder softwareunterstützter Zugriffe zu behindern drohen (mehr als 5000 Datenbankzugriffe täglich durch dieselbe Person oder unter derselben IP-Adresse bzw. unter einem zusammengehörigen Adressbereich), können ohne weitere Vorwarnung von der Nutzung ausgeschlossen werden.

                        Kommentar


                        • #13
                          Zitat von Crashbreaker Beitrag anzeigen
                          Inwiefern kann man solche Abfragen unterbinden?
                          Da gibt es mehrere Möglichkeiten. Eine davon ist der Einsatz von Javascript, wie die Seite es ja auch nutzt.

                          Kommentar


                          • #14

                            Trifft bei mir aber überhaupt nicht zu. Ich werde alle paar Wochen vielleicht 2-3 Zugriffe tätigen.

                            Kommentar


                            • #15
                              Zitat von protestix Beitrag anzeigen
                              Da gibt es mehrere Möglichkeiten. Eine davon ist der Einsatz von Javascript, wie die Seite es ja auch nutzt.
                              Heißt das, wenn ich die JavaScript Teil dort raus filtere, komme ich dann zu meinem Ziel?
                              Habe ich dich da richtig verstanden?

                              Kommentar

                              Lädt...
                              X