So erhalten Sie Informationen von einem Foto mit Ruby

Heutzutage sind wir es gewohnt, unsere Fotos in soziale Netzwerke oder in die “Cloud” hochzuladen, ohne darüber nachzudenken, welche Daten sie hinterlassen. Sicher wissen viele immer noch nicht, dass sie Metadaten (“Bildinformationen”) enthalten, die wir auf den ersten Blick nicht sehen . Wenn Sie jedoch mit der rechten Maustaste auf ein Bild klicken und zu Eigenschaften gehen und sehen, dass viele Informationen angezeigt werden, dann hinterlassen Sie ein paar Screenshots, wie diese Informationen unter Linux und Windows aussehen.

metadataLinux.jpg

metadataWindows.jpg

Es ist wertvoll, dass die Informationen, die wir in den obigen Bildern sehen, nicht die wichtigsten sind. Sie können nicht viel über uns wissen, außer dass wir das Foto aufgenommen haben. Wenn Sie ihnen erlauben, Ihren Standort zu bestimmen, hat die Kamera auch den Ort, an dem das Foto aufgenommen wurde , und zumindest in Windows können Sie sehen, ohne bestimmte Werkzeuge zu haben (es befindet sich an der gleichen Stelle wie im vorherigen Bild Eigenschaften> Details ), schauen Sie sich das folgende Bild an (ich habe die Informationen gelöscht):

metadataGPS.jpg

Wenn wir zu einer Seite gehen, die uns beim Einfügen des Breiten- und Längengrads die genaue Adresse angibt, an der das Foto aufgenommen wurde, und eine gewisse Gefahr besteht, kann eine böswillige Person herausfinden, wo wir leben.

location.jpg

In diesem Tutorial zeige ich Ihnen einen Code in Ruby, mit dem Sie Metadaten aus JPEG- und JPG-Bildern extrahieren können , obwohl Sie diese auch aus Tiff-Bildern abrufen können.

Als erstes müssen wir eine externe Bibliothek namens exifr installieren. Dazu führen wir den folgenden Satz aus:

 Edelstein installieren exifr 

Schauen wir uns den Code an. Wenn Sie etwas mit Ruby programmiert haben, ist das ganz einfach:

 erfordern 'exifr' image = '/home/ubuntu/solvetic.jpg' wenn EXIFR :: JPEG.neu (Bild) .exif? dann print "Width:", EXIFR :: JPEG.new (image) .width, " n" print "Höhe:", EXIFR :: JPEG.new (Bild) .height, " n" print "Kamera oder mobiles Modell:", EXIFR :: JPEG.new (Bild) .model, " n" print "Date:", EXIFR :: JPEG.new (image) .date_time, " n" if EXIFR :: JPEG.new (image) .gps then print "Latitude:", EXIFR :: JPEG.new (image) .gps.latitude, " n" print "Length:", EXIFR :: JPEG.new (image) .gps.longitude, " n" ende sonst Setzt "Keine Metadaten" ende 

Zuerst importieren wir die Bibliothek, deklarieren eine Variable mit dem Pfad unseres Bildes und führen eine kleine Überprüfung durch, unmittelbar danach werden wir die Eigenschaften des Bildes entfernen (wenn es eine Eigenschaft gibt, die keinen Wert hat, bleibt sie einfach leer). Im letzten Teil der Prüfung, ob GPS-Daten vorhanden sind, zeigen wir sie auf dem Bildschirm an, damit wir keinen Fehler erhalten, wenn es sich um einen Nullwert handelt.

Hinweis
debe ir la ruta de tu imagen. Wo Sie den Text /home/ubuntu/solvetic.jpg sehen, sollte der Pfad Ihres Bildes sein.

Wenn wir den Code ausführen, haben wir die folgende Konsolenausgabe:

See also  Servlet als Struktur einer Website nach J2EE-Standard

metadataRuby.jpg

Dann hinterlasse ich eine Postleitzahl mit dem obigen Code:

Angehängte Datei 66 Descargas metadatosRuby.zip 373 Bytes 66 Downloads

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *