img src sans extension !!

img src sans extension !! - HTML/CSS - Programmation

Marsh Posté le 28-11-2017 à 07:42:27    

Comment connaitre à coup sur l'extension d'une image qui se présente sous la forme <img src="image_sans_extension"> ??
Voila ma question parce que je scanne en python et pour le moment quand je ne trouve aucune extension le programme me dit qu'il ne voit pas d'image !
j'ai entendu parler d'un format mais je ne m'en souviens plus et je ne trouve rien sur google.
Merci beaucoup !


---------------
http://www.ypikay.com
Reply

Marsh Posté le 28-11-2017 à 07:42:27   

Reply

Marsh Posté le 28-11-2017 à 12:03:12    

Physiquement pour un fichier une image sans extension ça ne veut rien dire, c'est juste un fichier qui a PERDU son extension.

 

Par contre quand tu parles de web, ça peut très bien être une url réécrite. Donc pas un fichier physique, mais une règle du serveur pour gérer les images.

 

Rien compris à la phrase "je scanne en python et pour le moment quand je ne trouve aucune extension le programme me dit qu'il ne voit pas d'image !".
Si tu veux extraire les images, tu prends le contenu du src, tu ne cherches pas à valider l'extension. C'est pas fiable pour la raison que j'ai expliqué.


Message édité par TotalRecall le 28-11-2017 à 12:03:45

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 28-11-2017 à 13:29:06    

Si tu jettes un oeil à mon site tu vois que je scanne des images
Pour faire ça j'utilise python =>
à chaque fois que je trouve une image je copie une vignette mais je dois avoir une extension d'image (jpeg, jpg,bmp etc) en dur dans le code de la page que je scanne =>
je trouve "image.jgep" dans le code d'une page et donc je crée une miniature au format jpg.
Le soucis c'est que certaines images sont désormais affichées sans leur extension. ==> "image" et là démerdee toi pour savoir si c'est du gif du tif du tga du bmp du.....
Donc je sais qu'il existe un nouveau format de compression mais je ne sais pas comment faire. Voilà mon problème !!
 
MERCI


---------------
http://www.ypikay.com
Reply

Marsh Posté le 28-11-2017 à 13:41:08    

N'utilise JAMAIS l'extension pour detecter le type d'une image.
 
Chaque type d'image admet un header spécifique, par exemple pour le PNG tu vas trouver ce genre de doc:
 
The first eight bytes of a PNG file always contain the following (decimal) values:
137 80 78 71 13 10 26 10
 
Donc si tu lis les caracteres 1 a 1 de l'image (comme si tu lisais un fichier ) tu dois systématiquement tomber sur cette chaine dans cet ordre, au tout debut.
 
Pour le gif:
http://www.onicos.com/staff/iz/formats/gif.html
 
Et ainsi de suite, tu as certainement des biblis en python qui font ca pour toi...
 
EDIT: genre ca ca doit faire ce que tu veux: https://docs.python.org/2/library/imghdr.html

Message cité 1 fois
Message édité par Devil'sTiger le 28-11-2017 à 13:42:31
Reply

Marsh Posté le 28-11-2017 à 14:26:20    

erwan83 a écrit :

Si tu jettes un oeil à mon site tu vois que je scanne des images
Pour faire ça j'utilise python =>
à chaque fois que je trouve une image je copie une vignette mais je dois avoir une extension d'image (jpeg, jpg,bmp etc) en dur dans le code de la page que je scanne =>
je trouve "image.jgep" dans le code d'une page et donc je crée une miniature au format jpg.
Le soucis c'est que certaines images sont désormais affichées sans leur extension. ==> "image" et là démerdee toi pour savoir si c'est du gif du tif du tga du bmp du.....
Donc je sais qu'il existe un nouveau format de compression mais je ne sais pas comment faire. Voilà mon problème !!

 

MERCI


Débrouille toi pour que ton machin qui scanne n'essaie pas d'exploiter l'extension mais qu'il puisse détecter le format à partir de l'entête (principe expliqué ci-dessus par Devil'sTiger).
Si t'y arrive pas, force ton truc à être traité comme un jpg et vois si ça donne une image lisible, idem pour le png, etc.

 

Et comme je t'ai dit y a pas de "nouveau" format de compression (enfin, si, mais non), et surtout pas de format sans extension.


Message édité par TotalRecall le 28-11-2017 à 14:27:10

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 28-11-2017 à 14:27:46    

De toute facon une bonne partie de ces formats sont des conteneurs donc l'algo de compression dedans, tu n'as pas besoin de le savoir pour détecter le type de fichier ;)

Reply

Marsh Posté le 28-11-2017 à 15:38:26    

+1 pour l'entête, appellé "magic number". Voir aussi le programme Linux "file".

Reply

Marsh Posté le 04-12-2017 à 15:24:03    

une image sans extension ça ne marche pas car le python ne va pas la détecter comme images et il ne poura pas la lire

Message cité 1 fois
Message édité par pjulienne le 04-12-2017 à 20:00:07
Reply

Marsh Posté le 04-12-2017 à 15:41:44    

pjulienne a écrit :

une image sans extension ça marche ne marche pas mais car le python  ne va pas la détecter comme images et il ne poura pas la lire


 [:csvop:1]


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 09-12-2017 à 12:29:53    

Devil'sTiger a écrit :

N'utilise JAMAIS l'extension pour detecter le type d'une image.
 
Chaque type d'image admet un header spécifique, par exemple pour le PNG tu vas trouver ce genre de doc:
 
The first eight bytes of a PNG file always contain the following (decimal) values:
137 80 78 71 13 10 26 10
 
Donc si tu lis les caracteres 1 a 1 de l'image (comme si tu lisais un fichier ) tu dois systématiquement tomber sur cette chaine dans cet ordre, au tout debut.
 
Pour le gif:
http://www.onicos.com/staff/iz/formats/gif.html
 
Et ainsi de suite, tu as certainement des biblis en python qui font ca pour toi...
 
EDIT: genre ca ca doit faire ce que tu veux: https://docs.python.org/2/library/imghdr.html


 
C'est une idée à creuser en effet, merci !!


---------------
http://www.ypikay.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed