Kā iegūt informāciju no fotoattēla ar Rubīnu

Satura rādītājs

Šodien mēs esam pieraduši augšupielādēt savus fotoattēlus sociālajos tīklos vai “mākonī”, nedomājot par to, kādus datus viņi nes aiz sevis, noteikti daudzi joprojām nezina, ka viņiem ir metadati (“attēla informācija”), ko mēs neredzam ar kailiem. acs. Bet, ja ar peles labo pogu noklikšķiniet uz attēla un dodamies uz īpašumiem un meklējam, ka redzam daudz informācijas, tad es atstāju dažus ekrānuzņēmumus par to, kā šī informācija izskatās Linux un Windows.

Labi, šī informācija, ko mēs redzam iepriekšējos attēlos, nav vissvarīgākā, viņi nevar daudz par mums zināt, izņemot to, ka mēs esam uzņēmuši fotoattēlu, patiesībā, ja jūs atļausiet man noteikt jūsu atrašanās vietu, kamerai būs arī vieta, kur fotoattēls tika uzņemts, un vismaz operētājsistēmā Windows to var redzēt bez īpašiem rīkiem (tas atrodas tajā pašā vietā kā iepriekšējais attēls) Rekvizīti> Detaļas), skatiet šo attēlu (es esmu izdzēsis informāciju):

Ja mēs ejam uz lapu, kurā, ievietojot platumu un garumu, tiek norādīta precīza adrese, kur tika uzņemts fotoattēls, sāk pastāvēt noteiktas briesmas, ļaunprātīga persona var uzzināt, kur mēs dzīvojam.

PALIELINĀT

Šajā apmācībā es dodos uz iemācīt Rubīna kodu, kas iegūst metadatus no jpeg.webp, jpg.webp, lai gan tos var iegūt arī no tiff attēliem.

Pirmā lieta, kas mums nepieciešama, ir instalēt ārēju bibliotēku ar nosaukumu exifr, šim nolūkam mēs izpildām šādu teikumu:

 dārgakmens instalēt exifr
Apskatīsim kodu, ja esat ieprogrammējis kaut ko ar rubīnu, tas būs ļoti vienkārši:
 pieprasīt 'exifr' image = '/home/ubuntu/solvetic.jpg.webp', ja EXIFR :: JPEG.webp.new (attēls) .exif? pēc tam izdrukājiet "Width:", EXIFR :: JPEG.webp.new (attēls) .width, "\ n" print "Height:", EXIFR :: JPEG.webp.new (image) .height, "\ n" print "Kameras modelis vai mobile: ", EXIFR :: JPEG.webp.new (attēls) .model," \ n "print" Date: ", EXIFR :: JPEG.webp.new (image) .date_time," \ n ", ja EXIFR :: JPEG.webp.new ( attēls) .gps, pēc tam izdrukājiet "Latitude:", EXIFR :: JPEG.webp.new (attēls) .gps.latitude, "\ n" print "Longitude:", EXIFR :: JPEG.webp.new (image) .gps.longitude, " \ n "end else" izbeidz "Nav metadatu"
Vispirms mēs importējam bibliotēku, deklarējam mainīgo ar mūsu attēla ceļu un veicam nelielu pārbaudi, tad mēs tikai iegūsim attēla rekvizītus (ja ir kāds īpašums, kuram nav vērtības, tas vienkārši paliek tukšs). Ja mēs pārbaudīsim, vai tam ir GPS dati, pēdējā daļā, lai tas mums nedotu kļūdu, ja tā ir nulles vērtība, ja tā ir, mēs to parādām ekrānā.

PiezīmeKur tu redzi tekstu /home/ubuntu/solvetic.jpg.webp jāiet sava tēla ceļš.

Ja mēs izpildām kodu, mums ir šāda konsoles izeja:

Šeit ir pasta indekss ar iepriekš norādīto kodu:

metadati Ruby.zip 373 baiti 148 lejupielādes

Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu
wave wave wave wave wave