Ankündigung

Einklappen
Keine Ankündigung bisher.

YouTube-Api User ( Kanal ) Parameter ausgeben lassen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • YouTube-Api User ( Kanal ) Parameter ausgeben lassen

    Hallo Leute,

    ich möchte gerne auf einer Seite YouTuber vorstellen. Ich habe es schon hinbekommen, dass ich die Abonnenten, Kanal-Aufrufe, Gesamtaufrufe und das Kanalbild ausgeben lassen kann:

    Abonnenten:
    PHP-Code:
    <?php
            $json 
    file_get_contents("http://gdata.youtube.com/feeds/api/users/username?alt=json");
            
    $data json_decode($jsontrue);
            echo 
    '' $data['entry']['yt$statistics']['subscriberCount'];
    ?>
    Kanalaufrufe:
    PHP-Code:
    <?php
            $json 
    file_get_contents("http://gdata.youtube.com/feeds/api/users/username?alt=json");
            
    $data json_decode($jsontrue);
            echo 
    '' $data['entry']['yt$statistics']['viewCount'];
            
    ?>
    Gesamtaufrufe:
    PHP-Code:
    <?php
            $json 
    file_get_contents("http://gdata.youtube.com/feeds/api/users/username?alt=json");
            
    $data json_decode($jsontrue);
            echo 
    '' $data['entry']['yt$statistics']['totalUploadViews'];
            
    ?>
    Kanalbild:
    PHP-Code:
    <?php
            $json 
    file_get_contents("http://gdata.youtube.com/feeds/api/users/[U]username[/U]?alt=json");
            
    $data json_decode($jsontrue);
            echo 
    '' $data['entry']['media$thumbnail']['url'];
            
    ?>
    Nun habe ich auf anderen Seiten gesehen, dass diese auch noch das Alter, die Kanal-Beschreibung und die Anzahl der Videos ausgeben. Ich habe bei Google dazu leider nichts gefunden.

    Könnt ihr mir dazu helfen, wie ich diese Parameter ausgeben lassen kann? Und falls ihr noch weitere kennt, die den Kanal betreffen auch sehr gerne!

    Ich freue mich auf eure Antworten.

  • #2
    Du kannst dir doch das gesamte array $data komplett ausgeben lassen, dann nachsehen was drin ist und dir dann die nötigen Informationen rauspicken:
    PHP-Code:
    echo "<pre>";
    var_dump($data);
    echo 
    "</pre>"

    Kommentar


    • #3
      Zitat von jspit Beitrag anzeigen
      Du kannst dir doch das gesamte array $data komplett ausgeben lassen, dann nachsehen was drin ist und dir dann die nötigen Informationen rauspicken:
      PHP-Code:
      echo "<pre>";
      var_dump($data);
      echo 
      "</pre>"
      also wenn ich das ausgeben lasse, dann zeigt er mir nur "Null" an. Ich muss dazu sagen, dass ich Anfänger bin und mir bisher alles zusammen gebastelt habe

      Kommentar


      • #4
        Deine 'Beispiele' bringen allesamt NULL. Für username in der url muß natürlich der echte Kanalname rein.

        Kommentar


        • #5
          Zitat von jspit Beitrag anzeigen
          Deine 'Beispiele' bringen allesamt NULL. Für username in der url muß natürlich der echte Kanalname rein.
          Ja das war mir bewusst. Wenn man username für einen echten Kanalnamen beispielsweise gronkh ersetzt klappt es wunderbar. Meine Beispiele waren auch nur laufende Beispiele. Daher wollte ich ja wissen, wie die anderen Variabeln heißen, weil ich das nicht finden konnte

          Wäre super wenn du mir helfen könntest!

          Aber wie gebe ich nun den array komplett aus ?


          Ich habe folgendes probiert:
          PHP-Code:
          <?php
          echo "<pre>"
          var_dump($data); 
          echo 
          "</pre>"
          ?>
          Dann gibt er mir aber nur Null aus.

          Kommentar


          • #6
            Zitat von michael-maze-2 Beitrag anzeigen
            Ich habe folgendes probiert:
            PHP-Code:
            <?php
            echo "<pre>"
            var_dump($data); 
            echo 
            "</pre>"
            ?>
            Dann gibt er mir aber nur Null aus.
            Ja, wo soll denn hier $data herkommen?
            Fehlen da nicht noch 2 Zeilen?

            Kommentar


            • #7
              Zitat von jspit Beitrag anzeigen
              Ja, wo soll denn hier $data herkommen?
              Fehlen da nicht noch 2 Zeilen?
              Stimmt, das habe ich mich auch gefragt

              Jetzt geht es. Klasse und ich habe einige Parameter bekommen, die ich gesucht habe.

              Danke danke danke!!!!

              Kommentar


              • #8
                OMG, und das noch im Bereich für PHP-Fortgeschrittene ...

                Kommentar


                • #9
                  Das Thema kann auch gerne ins Anfängerforum verschoben werden

                  Ich denke ich habe den richtigen Parameter heraus gefunden für die Uploads. Hier die Beispiele mit dem YouTube-Kanal "gronkh":

                  PHP-Code:
                  ["gd$feedLink"]=>
                     [
                  4]=>
                        array(
                  3) {
                          [
                  "rel"]=>
                          
                  string(50"http://gdata.youtube.com/schemas/2007#user.uploads"
                          
                  ["href"]=>
                          
                  string(55"http://gdata.youtube.com/feeds/api/users/gronkh/uploads"
                          
                  ["countHint"]=>
                          
                  int(3002)
                        } 
                  Jetzt wollte ich die Zahl ausgeben lassen mit folgendem Code:
                  PHP-Code:
                  <?php
                          $json 
                  file_get_contents("http://gdata.youtube.com/feeds/api/users/gronkh/uploads");
                          
                  $data json_decode($jsontrue);
                          echo 
                  'Anzahl der Videos: ' $data['entry']['gd$feedLink']['countHint'];
                          
                  ?>
                  Leider gibt er mir aber nichts aus. Ziel wäre es die Zahl 3002 ausgegeben zubekommen, da dies die Anzahl der Videos ist die der User Gronkh hochgeladen hat.

                  Kann mir jemand helfen?

                  Kommentar


                  • #10
                    http://framework.zend.com/manual/1.1...be.videos.user
                    I like cooking my family and my pets.
                    Use commas. Don't be a psycho.
                    [URL="http://jscouch.de"]Blog[/URL] - [URL="http://coverflowjs.github.io/coverflow/"]CoverflowJS[/URL]

                    Kommentar


                    • #11
                      Die YoutubeAPI hat mit JSON nichts zu tun, das ist reinstes XML,
                      außerdem steht die gesuchte Zahl in einem komplett andere Tag:
                      Code:
                      <openSearch:totalResults>3002</openSearch:totalResults>
                      Lese das ganze mal in simplexml ein und hangel dich dann zur gesuchten Ausgabe.

                      Oder eben wenn du noch mehr davon brauchst das Zend-Teilchen nehmen.
                      [URL="http://php.net/manual/en/migration55.deprecated.php"]mysql ist veraltet[/URL] [URL="http://php-de.github.io/jumpto/mail-class/"]Mails senden: Ohne Probleme und ohne mail()[/URL]
                      [PHP]echo 'PS: <b>Meine Antwort ist keine Lösung, sondern nur eine Hilfe zur Lösung.</b>';[/PHP]

                      Kommentar


                      • #12
                        Zitat von ChrisvA Beitrag anzeigen
                        Die YoutubeAPI hat mit JSON nichts zu tun, das ist reinstes XML
                        Man kann die YoutubeAPI sehr wohl dazu bewegen, JSON zu liefern. Dafür ist nur ein Parameter ?alt=json notwendig.
                        YouTube API v2.0 – API Query Parameters

                        Zitat von ChrisvA Beitrag anzeigen
                        außerdem steht die gesuchte Zahl in einem komplett andere Tag:
                        seh ich auch so.

                        michael-maze-2, du mußt sorgfältiger arbeiten:
                        - ohne ?alt=json als Parameter kann das nichts werden, warum fehlt der auf einmal?
                        - wie du an die Parameter kommst, hatten wir doch schon mal durch.
                        Zudem ist die YoutubeAPI gut dokumentiert, jedoch auch sehr umfangreich:
                        YouTube APIs and Tools
                        Ein Blick da rein lohnt sich immer (Ev. lassen sich sogar Statistiken rausholen ).

                        LG jspit

                        Kommentar


                        • #13
                          Hallo zusammen,

                          ich hatte nun die ganze Seite fertig und wollte sie online stellen und testen. Nun kam das böse Erwachen. Er gibt mir für die unten stehen Codes immer einen Fehlercode aus:

                          Warning: file_get_contents() [function.file-get-contents]: http:// wrapper is disabled in the server configuration by allow_url_fopen=0 in

                          Warning: file_get_contents(http://www.gdata.youtube.com/feeds/a...ronkh?alt=json) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in

                          Ich habe beim googlen heraus gefunden, dass es wohl etwas mit dem Server zu tun hat. Mein Server ist bei Hetzner.

                          Lösungsansätze:
                          - Curl
                          - "allow_url_fopen" in der PHP ini a
                          - Iframe

                          Leider kann ich mit diesen Lösungsansätzen nicht viel anfangen. Könnte mir da einer einen Tipp geben und ein Beispiel-Code geben von unten, wie er funktionieren könnte?

                          Zitat von michael-maze-2 Beitrag anzeigen
                          Hallo Leute,

                          ich möchte gerne auf einer Seite YouTuber vorstellen. Ich habe es schon hinbekommen, dass ich die Abonnenten, Kanal-Aufrufe, Gesamtaufrufe und das Kanalbild ausgeben lassen kann:

                          Abonnenten:
                          PHP-Code:
                          <?php
                                  $json 
                          file_get_contents("http://gdata.youtube.com/feeds/api/users/username?alt=json");
                                  
                          $data json_decode($jsontrue);
                                  echo 
                          '' $data['entry']['yt$statistics']['subscriberCount'];
                          ?>
                          Kanalaufrufe:
                          PHP-Code:
                          <?php
                                  $json 
                          file_get_contents("http://gdata.youtube.com/feeds/api/users/username?alt=json");
                                  
                          $data json_decode($jsontrue);
                                  echo 
                          '' $data['entry']['yt$statistics']['viewCount'];
                                  
                          ?>
                          Gesamtaufrufe:
                          PHP-Code:
                          <?php
                                  $json 
                          file_get_contents("http://gdata.youtube.com/feeds/api/users/username?alt=json");
                                  
                          $data json_decode($jsontrue);
                                  echo 
                          '' $data['entry']['yt$statistics']['totalUploadViews'];
                                  
                          ?>
                          Kanalbild:
                          PHP-Code:
                          <?php
                                  $json 
                          file_get_contents("http://gdata.youtube.com/feeds/api/users/[U]username[/U]?alt=json");
                                  
                          $data json_decode($jsontrue);
                                  echo 
                          '' $data['entry']['media$thumbnail']['url'];
                                  
                          ?>
                          Nun habe ich auf anderen Seiten gesehen, dass diese auch noch das Alter, die Kanal-Beschreibung und die Anzahl der Videos ausgeben. Ich habe bei Google dazu leider nichts gefunden.

                          Könnt ihr mir dazu helfen, wie ich diese Parameter ausgeben lassen kann? Und falls ihr noch weitere kennt, die den Kanal betreffen auch sehr gerne!

                          Ich freue mich auf eure Antworten.

                          Kommentar


                          • #14
                            Hi,

                            Lösungsansätze:
                            - Curl
                            - "allow_url_fopen" in der PHP ini a
                            - Iframe
                            "allow_url_fopen" in der PHP.ini auf On zu setzen sollte schnell zum Ziel führen, sofern du Zugriff auf die php.ini hast und es erlaubt wird
                            ( vorher mit deinem Webhoster abklären! ):

                            - Zeile in der php.ini mit allow_url_fopen editieren in
                            allow_url_fopen = On
                            - Apache beenden + neu starten
                            - in die phpinfo ( phpinfo(); ) schauen, dort sollte dann

                            allow_url_fopen On On

                            stehen.

                            LG jspit

                            Kommentar


                            • #15
                              Habe gerade mit Hetzner telefoniert und konnte es in den Server-Einstellungen mit einem Klick ändern. Und siehe da es funktioniert direkt

                              Danke Jspit!

                              Zitat von jspit Beitrag anzeigen
                              Hi,



                              "allow_url_fopen" in der PHP.ini auf On zu setzen sollte schnell zum Ziel führen, sofern du Zugriff auf die php.ini hast und es erlaubt wird
                              ( vorher mit deinem Webhoster abklären! ):

                              - Zeile in der php.ini mit allow_url_fopen editieren in
                              allow_url_fopen = On
                              - Apache beenden + neu starten
                              - in die phpinfo ( phpinfo(); ) schauen, dort sollte dann

                              allow_url_fopen On On

                              stehen.

                              LG jspit

                              Kommentar

                              Lädt...
                              X