Comment copier des images de diaporama nytimes.com dans le presse-papiers?


57

Les diaporamas sur le site Web du New York Times semblent avoir utilisé certaines astuces pour * provoquer un clic droit dans Firefox (et IE / Chrome), puis "afficher l'image" ou "copier l'image" pour renvoyer un pixel de 1 x 1. Les images aussi ne seront pas imprimées.

Comment puis-je contourner ce court d'une capture d'écran? Des points bonus pour décrire comment ils l'ont fait.

* En fin de compte, Ijgww a souligné qu'il ne s'agissait probablement pas d'une supercherie, mais plutôt du fait de certaines limitations du navigateur qui exigent ce comportement étrange, comme le montre l'image de cet article , où copier, coller et imprimer fonctionnent correctement. Morale de l'histoire: ne présumez jamais d'intention négative.

S'il s'agit d'un diaporama, il se peut que ce ne soit pas une supercherie. De nombreuses solutions de diaporamas ne sont possibles que si l'image est à l'arrière-plan par css en raison des fonctions de recadrage de x-browser. Et un pixel 1x1 est utilisé pour définir la taille du rognage.


2
Je voudrais envoyer un courriel sur le site, expliquer qui je suis et demander les photos
Canadian Luke REINSTATE MONICA

8
@ Luke Ce n'est pas faisable, je ne devrais pas non plus le faire. Cela tombe facilement dans les directives de copyright d'utilisation équitable.
glenviewjeff

4
Comment offrez-vous des points bonus exactement?
Dave

1
Prime @DaveRook? Vous ne saurez jamais jusqu'à ce que vous essayiez ...
glenviewjeff

1
Je n'ai pas précisé le but de la copie de l'image; je ne devrais pas non plus le faire. Il existe probablement un nombre infini de cas valables d' utilisation équitable pour copier une image dans le presse-papier de votre ordinateur ou l'imprimer. Par exemple; imprimez-le et agrafez-le sur le front de votre enfant.
glenviewjeff

Réponses:


82

New York Times crée un <div>élément contenant l'image d'un pixel étirée et transparente et localise l'image réelle à l'arrière-plan:

<div class="centeredElement" style="background-image:url('http://graphics8.nytimes.com/images/2011/09/21/dining/20110921-ROSH-slide-CBSF/20110921-ROSH-slide-CBSF-slide.jpg');width:600px; height:400px;">
<img width="600" height="400" src="http://graphics8.nytimes.com/images/misc/pixel.gif" />
</div>

Pour enregistrer l'image:

  1. Faites un clic droit dessus.
  2. Cliquez sur Afficher les informations sur l' image .
  3. Sélectionnez l' image réelle (une au-dessus de l'image d'un pixel).
  4. Cliquez sur Enregistrer sous ... .

Comment imprimer la page:

  1. Appuyez sur Ctrl+ P.
  2. Entrez dans l' onglet Options .
  3. Cochez Imprimer les images d'arrière-plan .
  4. Cliquez sur Imprimer .

4
Cela semble ridicule de penser que ce genre de tromperie empêchera les utilisateurs de prendre leurs images.
Eliot Ball

51
@EliotBall Je serais choqué si le taux de réussite n'était pas supérieur à 95%. Une majorité d'internautes n'a pas été alphabétisée techniquement depuis le début des années 90.
Dan Neely

11
En outre, il n’ya pas beaucoup d’avantages à le rendre plus complexe. L'écart entre ceux qui sont arrêtés par quelque chose de trivial et ceux qui sont capables d'utiliser les outils adblock / webdev de leur navigateur pour déterminer comment extraire gratuitement l'image, ou qui sont capables de demander et de suivre les instructions de quelqu'un d'autre qui peut est très petit. Pendant ce temps, ajouter tous les éléments supplémentaires à la page ralentit le téléchargement et le rendu, ce qui est ennuyeux.
Dan Neely

9
@EliotBall Si c'était si évident, alors pourquoi cette question concerne-t-elle le SuperUser? Maintenant, prenez en compte le nombre de personnes qui n'entendront jamais parler de SuperUser…
MattiSG

5
@DanNeely - ' Septembre éternel ' a commencé en 1993.;)
BryanH

49
  1. Utilisez le plugin AdBlockPlus, faites un clic droit sur l'image et bloquez-la (sélectionnez la dernière option 'custom ... pixel.gif'). À partir de maintenant, après avoir actualisé la page une fois, vous pourrez cliquer avec le bouton droit de la souris sur l'image et sélectionner "Afficher l'image de fond" et le tour est joué!

    C’est la meilleure option, comme cela n’est fait qu’une fois, vous permettra de sauvegarder les images des galeries toujours sans effort supplémentaire.

  2. Avec le plugin Firebug sous Firefox ou avec l'option de génération dans Chrome, sélectionnez "inspecter un élément". Ensuite, vous verrez le code HTML pointant vers la balise img avec src au pixel.gif. La div qui la contient a la bonne image en fond. Il suffit de copier l’URL de l’image à partir du style de l’élément div (background-image: url) et vous avez terminé.


J'aime mieux votre solution, mais j'ai accepté @ Dennis's à cause de l'explication.
Glenviewjeff

Je voulais aussi expliquer, mais pressé a eu un problème pour coller l'exemple de code HTML afin finalement l'ignoré. Eh bien, peut-être que la prochaine fois, j'aurai le «V» vert. Le plus important de ma réponse est utile pour vous :)
topr

+1, ceci (avec ABP) est exactement ce que je fais aussi dans des situations comme celle-ci.
Karan

1
Le navigateur d'opéra peut bloquer n'importe quoi sans plugin. En ce qui concerne adblock, veuillez utiliser une liste blanche pour les sites que vous aimez, ils ont besoin de l'argent des annonces.
Manu

1
@manu Opera a-t-il ajouté un blocage intégré basé sur le DOM, ou avez-vous encore besoin d'un plugin pour des tâches autres que les filtres d'URL?
Dan Neely

17

Puisque vous avez marqué la question avec firefox et que vous avez marqué comme correcte une méthode décrivant comment enregistrer l'image, je suggère l'alternative suivante:

  • Soit:
    • Faites un clic droit sur la page -> View Page Info.
    • Choisissez Tools-> Page Infodans la barre de menus.
  • Sélectionnez MediaTab dans la fenêtre qui s’ouvre.
  • Recherchez l'image que vous recherchez et cliquez sur le Save asbouton. Le classement du support par taille vous permet généralement d’accéder plus rapidement à l’image que vous recherchez.

firefox-page-info

Cette méthode fonctionnera avec les diaporamas du NY Times. Pourtant, il est plus pratique avec:

  1. Pages contenant plusieurs images à télécharger. Vous pouvez sélectionner plusieurs fichiers dans la liste de supports et les enregistrer en un clic Save as.
  2. Pages avec des restrictions stupides sur le clic droit (par exemple, diaporamas IMDB ). Cette méthode vous évite de devoir désactiver puis réactiver javascript.

4
C'est un délicieux poulet à la recherche.
Russell Borogove

2
@RussellBorogove Pourquoi pensez-vous que je voulais l'imprimer?
glenviewjeff

15

Faites un clic droit et sélectionnez inspecter l'élément dans Chrome. Maintenant, copiez l'URL dans le champ image de fond

Ce qui me donne le lien réel

http://graphics8.nytimes.com/images/2011/09/21/dining/20110921-ROSH-slide-CBSF/20110921-ROSH-slide-CBSF-slide.jpg

entrer la description du lien ici


C'est exactement ce que je fais. On a l'impression qu'il manque de finesse, mais cela fonctionne, il est rapide et simple. Choix de l'image agréable aussi: (original) Poulet géorgien avec Tamarind pour les vacances! Miam!
Ellie Kesselman le

6

S'il s'agit d'un diaporama, il se peut que ce ne soit pas une supercherie. De nombreuses solutions de diaporamas ne sont possibles que si l'image est à l'arrière-plan par css en raison des fonctions de recadrage de x-browser. Et 1x1 pixel est utilisé pour définir la taille du rognage.

D'autres ont déjà répondu comment télécharger une telle image. Je voulais juste jeter un autre éclairage sur le sujet, pas pour collecter des primes.

À votre santé!


Vous semblez avoir tout à fait raison ! C'est drôle de voir combien d'entre nous se sont laissés entraîner à présumer de mauvaises intentions. Modification de la question et des balises.
glenviewjeff

C'était une réponse de programmeur javascript (qui se faufile sur ce que font les concepteurs web);) Merci pour les points :)
ljgww

3

J'utiliserais simplement un bookmarklet JavaScript pour remplacer l'image fictive par la vraie. Vous pourrez alors la sauvegarder ou la faire glisser sur votre bureau.

Sélectionnez et faites glisser le code ci-dessous directement dans la barre d'outils des favoris de votre navigateur, puis cliquez dessus pour l'exécuter sur chaque page à partir de laquelle vous souhaitez afficher l'image:

javascript: var div = document.getElementsByClassName('image')[0]; var url = div.getElementsByClassName('centeredElement')[0].style.backgroundImage.replace(/^url\("|"\)$/g, ''); div.getElementsByTagName('img')[0].src = url; void(0);

Cela ne fonctionnera que sur ce site, et seulement tant qu'ils ont le code HTML comme ils le font actuellement.


2

Utilisez Chrome, cliquez avec le bouton droit sur l'image, effectuez l'inspection des éléments. Ignorez la balise image et recherchez l'URL d'arrière-plan de la div, ce qui vous donne le vrai chemin de l'image, que vous pouvez copier, charger dans un nouvel onglet et enregistrer.


1
Par exemple, en fonction de votre lien dans la question: - graphics8.nytimes.com/images/2011/09/21/dining/…
Rob Cowell le

2

Voici une solution générale qui devrait fonctionner pour n'importe quel site web.

Installez et démarrez Fiddler . Accédez au site avec l'image.

Vérifiez le journal de trafic capturé qui a été capturé dans Fiddler et vous trouverez toutes les images téléchargées sur votre navigateur.


Vous n'avez pas besoin de Fiddler pour cela, les navigateurs offrent également ces informations (voir certaines des réponses ci-dessus). Moineaux et canons.
Konrad Rudolph

1
La solution Fiddler fonctionnera avec TOUS les navigateurs, et même si les ressources sont chargées via Flash ou un autre objet incorporé, à condition qu'elles soient chargées via HTTP ou HTTPS. Avec Fiddler, la procédure est la même, à chaque fois. Sinon, la procédure est légèrement différente en fonction du site Web ou du navigateur. Je ne dis pas que c'est la solution la plus simple, mais une bonne alternative universelle.
dotnetengineer

Votre mention des ressources Flash est en fait un très bon point.
Konrad Rudolph

2
L'ajout de logiciels supplémentaires ne devrait pas être nécessaire, ce qui représente une augmentation considérable de la complexité d'un processus qui devrait être simple. Fiddler est également un outil pour les programmeurs, pas pour les utilisateurs expérimentés en informatique.
Jeff Atwood le

@ JeffAtwood: Bien que je sois d'accord avec votre affirmation selon laquelle il s'agirait (dans de nombreux cas) d'une complexité supplémentaire inutile, cela n'empêche pas que l'utilisation d'un proxy intermédiaire puisse être, dans certaines circonstances, le seul moyen raisonnable de capturer ce contenu. .
ingenieur en réseau

1

Appuyez sur PrtScrn, ouvrez un programme de peinture, collez.

Si vous utilisez Windows: pour capturer uniquement la fenêtre active: Alt+ PrtScrn, si vous utilisez Vista ou une version ultérieure , vous pouvez utiliser l'outil Capture pour capturer uniquement une sélection.


CECI est la solution la plus générale de toutes et la raison pour laquelle il n’existera jamais de solution de navigateur permettant de "voler" des images.
UncleZeiv

1
En réalité, il s’agit d’un problème si l’image couvre une résolution plus grande que celle que votre moniteur peut afficher - cela reste réalisable mais cela devient fastidieux.
Thomas

Dans l'OP, "Comment puis-je contourner ce court d'une capture d'écran ?"
glenviewjeff

Toutes mes excuses. J'ai lu "court" comme "sorte" puis j'ai présumé que vous parliez de "capture d'écran [préventive] [technologie]".
Markmnl

1

Toutes les images que vous voyez sur votre navigateur sont stockées dans une mémoire cache quelque part sur votre disque dur. Vous pouvez utiliser un outil d’extraction de cache pour extraire les images après la session de navigation. Et pas besoin de sauver un par un. L'un des outils que vous pouvez utiliser est cacheCopy . Vous permet de choisir le navigateur, choisissez le cache. Quelle est la taille (taille du fichier ou résolution) des images que vous souhaitez enregistrer? Et vous permet également de donner à vos fichiers un nom propre.

L'inconvénient de cette approche est que vous devrez filtrer les images du site cible de toutes les autres de votre cache. Mais cela peut être évité si vous effacez le cache avant de commencer à parcourir les images récoltées. De plus, cet outil ne fonctionne pas en mode privé, car le cache n'y est pas utilisé.

Déni de responsabilité: c'est un bouchon éhonté. Je suis l'auteur de cette application.


euh .. pour n'importe quel but. Initialement créé pour
capture

0

En général: Chrome / Inspecter un élément / onglet Ressources / Cadres / le seul cadre de la page / Images. Aucune astuce dans le monde ne pourrait masquer une image de cette liste.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.