ฉันจะคัดลอกรูปภาพสไลด์โชว์ของ nytimes.com ไปยังคลิปบอร์ดได้อย่างไร?


57

สไลด์โชว์ในเว็บไซต์ New York Times ดูเหมือนจะใช้กลอุบายบางอย่างเพื่อ * ทำให้เกิดการคลิกขวาใน Firefox (และ IE / Chrome) จากนั้น "ดูภาพ" หรือ "คัดลอกภาพ" เพื่อกลับมาที่ 1 x 1 พิกเซล รูปภาพจะไม่พิมพ์

ฉันจะหลีกเลี่ยงการจับภาพหน้าจอนี้ได้อย่างไร คะแนนโบนัสสำหรับอธิบายว่าพวกเขาทำได้อย่างไร

* ท้ายที่สุดแล้ว Ijgww ชี้ให้เห็นว่านี่ไม่ใช่การหลอกลวงเพราะอาจเป็นเพราะข้อ จำกัด ของเบราว์เซอร์ที่ต้องการพฤติกรรมแปลก ๆ ดังที่เห็นได้จากรูปภาพของบทความนี้ที่ฟังก์ชันคัดลอกวางและพิมพ์อย่างถูกต้อง คุณธรรมของเรื่องราว: ไม่เคยคิดเจตนาลบ

ถ้ามันเป็นสไลด์โชว์มันอาจจะไม่ใช้กลอุบายเลย โซลูชันสไลด์โชว์จำนวนมากสามารถทำได้เฉพาะในกรณีที่ภาพอยู่ในพื้นหลังโดย css เนื่องจากเครื่องมือการครอบตัด x-browser และใช้ 1x1 พิกเซลเพื่อกำหนดขนาดการครอบตัด


2
ฉันจะส่งอีเมลเว็บไซต์อธิบายว่าฉันเป็นใครและขอภาพ
Canadian Luke

8
@ ลุคนี่เป็นไปไม่ได้และไม่ควรทำ สิ่งนี้อยู่ในแนวทางลิขสิทธิ์ที่เป็นธรรม
glenviewjeff

4
คุณเสนอคะแนนโบนัสอย่างไร
เดฟ

1
@DaveRook ความโปรดปราน? คุณจะไม่มีทางรู้จนกว่าคุณจะลอง ...
glenviewjeff

1
ฉันไม่ได้ระบุวัตถุประสงค์ในการคัดลอกภาพ ไม่ควรจะต้อง อาจมีกรณีการใช้งานที่ไม่ถูกต้องสำหรับการคัดลอกรูปภาพไปยังคลิปบอร์ดของคอมพิวเตอร์หรือพิมพ์ ตัวอย่างเช่น พิมพ์ออกมาและเย็บเข้าที่หน้าผากลูกของคุณ
glenviewjeff

คำตอบ:


82

New York Times สร้าง<div>องค์ประกอบที่มีภาพหนึ่งพิกเซลที่ยืดและโปร่งใสและหาตำแหน่งภาพจริงในพื้นหลัง:

<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>

ในการบันทึกภาพ:

  1. คลิกขวา
  2. คลิกดูรายละเอียดของภาพ
  3. เลือกภาพจริง (ภาพด้านบนภาพหนึ่งพิกเซล)
  4. คลิกที่Save As ...

วิธีพิมพ์หน้า:

  1. กด+CtrlP
  2. ป้อนแท็บตัวเลือก
  3. ตรวจสอบการพิมพ์ภาพพื้นหลัง
  4. คลิกพิมพ์

4
ดูเหมือนว่าพวกเขาโง่คิดว่ากลอุบายชนิดนี้จะป้องกันไม่ให้ผู้ใช้ถ่ายภาพ
Eliot Ball

51
@EliotBall ฉันจะตกใจถ้ามันไม่มีอัตราความสำเร็จ> 95% ผู้ใช้อินเทอร์เน็ตส่วนใหญ่ไม่ได้มีความรู้ด้านเทคนิคมาก่อนในยุค 90
Dan Neely

11
นอกจากนี้ยังมีประโยชน์ไม่มากนักที่ทำให้ซับซ้อนขึ้น ช่องว่างระหว่างคนที่หยุดโดยสิ่งที่ไม่สำคัญกับคนที่สามารถใช้เครื่องมือ adblock / webdev ของเบราว์เซอร์เพื่อหาวิธีที่จะริปภาพฟรีโดยตรงหรือสามารถถามและทำตามคำแนะนำจากคนอื่นที่สามารถ เล็กมาก ในขณะเดียวกันการเพิ่มสิ่งพิเศษทั้งหมดลงในหน้าจะทำให้การดาวน์โหลดและการแสดงผลช้าลงและน่ารำคาญ
Dan Neely

9
@EliotBall ถ้าเห็นได้ชัดแล้วทำไมคำถามนี้ถึง SuperUser ตอนนี้ให้ลองพิจารณาว่ามีกี่คนที่จะไม่เคยได้ยินเกี่ยวกับ SuperUser ...
MattiSG

5
@DanNeely - ' Eternal September ' เริ่มขึ้นในปี 1993;)
BryanH

49
  1. ใช้ปลั๊กอิน AdBlockPlus คลิกขวาที่ภาพและบล็อก (เลือกตัวเลือกสุดท้าย 'กำหนดเอง ... pixel.gif') จากนี้หลังจากรีเฟรชหน้าหนึ่งครั้งคุณจะสามารถคลิกด้วยปุ่มเมาส์ขวาบนภาพและเลือก 'ดูภาพพื้นหลัง' และข้อความ!

    นี่เป็นตัวเลือกที่ดีที่สุดเท่าที่ทำได้เพียงครั้งเดียวจะช่วยให้คุณสามารถบันทึกภาพจากแกลเลอรี่ได้เสมอโดยไม่ต้องใช้ความพยายามเพิ่มเติม

  2. ด้วยปลั๊กอิน Firebug ภายใต้ Firefox หรือด้วยตัวเลือกในการสร้างใน Chrome เลือก 'ตรวจสอบองค์ประกอบ' จากนั้นคุณจะเห็นรหัส HTML ชี้ไปที่แท็ก img พร้อม src ไปที่พิกเซลลับ ๆ ล่อๆ div ที่มีมันจะมีชุดภาพที่เหมาะสมเป็นพื้นหลัง เพียงคัดลอก URL รูปภาพจากสไตล์ขององค์ประกอบ div (background-image: url) และคุณทำเสร็จแล้ว


ฉันชอบโซลูชันของคุณดีที่สุด แต่ฉันยอมรับ @ Dennis's เนื่องจากคำอธิบาย
glenviewjeff

ฉันอยากจะอธิบายเช่นกัน แต่รีบมีปัญหาในการวางตัวอย่างโค้ด HTML ดังนั้นในที่สุดก็ข้ามมันไป บางทีครั้งต่อไปฉันจะได้รับ 'V' สีเขียว สิ่งที่สำคัญที่สุดคำตอบของฉันจะเป็นประโยชน์กับคุณ :)
topr

+1 (ใช้ ABP) เป็นว่าสิ่งที่ฉันทำเช่นกันในสถานการณ์เช่นนี้
Karan

1
เบราว์เซอร์ opera สามารถบล็อกสิ่งใดก็ได้โดยไม่ต้องใช้ปลั๊กอิน สำหรับ adblock โปรดใช้รายการที่อนุญาตสำหรับเว็บไซต์ที่คุณต้องการพวกเขาต้องการเงินจากโฆษณา
มนู

1
@manu มีการเพิ่ม Opera ในตัวการบล็อกตาม DOM หรือคุณยังต้องการปลั๊กอินสำหรับตัวกรอง URL
Dan Neely

17

เนื่องจากคุณติดแท็กคำถามด้วย Firefox และคุณได้ทำเครื่องหมายว่าถูกต้องวิธีการอธิบายวิธีการบันทึกภาพฉันขอแนะนำทางเลือกต่อไปนี้:

  • ทั้ง:
    • คลิกขวาที่หน้า View Page Info->
    • เลือกTools-> Page Infoจากแถบเมนู
  • เลือกMediaTab บนหน้าต่างที่ปรากฏขึ้น
  • เรียกดูรูปภาพที่คุณกำลังค้นหาและคลิกSave asปุ่ม การเรียงลำดับสื่อตามขนาดมักจะช่วยให้คุณมองภาพที่ต้องการได้เร็วขึ้น

Firefox หน้า-info

วิธีนี้จะทำงานกับสไลด์โชว์ NY Times แต่มันมีประโยชน์มากที่สุดกับ:

  1. หน้าที่มีภาพหลายภาพที่คุณต้องการดาวน์โหลด คุณสามารถเลือกหลายไฟล์จากรายการสื่อและบันทึกทั้งหมดได้ด้วยคลิกSave asเดียว
  2. หน้าที่มีข้อ จำกัด โง่ ๆ ในการคลิกขวา (เช่นสไลด์โชว์ IMDB ) วิธีนี้ช่วยให้คุณไม่ต้องปิดการใช้งานจากนั้นเปิดใช้งาน JavaScript อีกครั้ง

4
นั่นคือไก่ที่ดูน่าอร่อย
รัสเซล Borogove

2
@RussellBorogove ทำไมคุณถึงคิดว่าฉันต้องการที่จะพิมพ์มันได้หรือไม่
glenviewjeff

15

คลิกขวาและเลือกตรวจสอบองค์ประกอบใน Chrome ตอนนี้คัดลอก URL ในฟิลด์ภาพพื้นหลัง

ซึ่งให้ลิงค์จริงกับฉัน

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

ป้อนคำอธิบายลิงก์ที่นี่


นี่คือสิ่งที่ฉันทำ รู้สึกเหมือนว่ามันไม่มีไหวพริบ แต่มันใช้งานได้และรวดเร็วและตรงไปตรงมา ตัวเลือกภาพที่ดีเช่นกัน: (ต้นฉบับ) ไก่จอร์เจียพร้อมมะขามสำหรับวันหยุด! ยัม!
Ellie Kesselman

6

ถ้ามันเป็นสไลด์โชว์มันอาจจะไม่ใช้กลอุบายเลย โซลูชันสไลด์โชว์จำนวนมากสามารถทำได้เฉพาะในกรณีที่ภาพอยู่ในพื้นหลังโดย css เนื่องจากเครื่องมือการครอบตัด x-browser และ 1x1 พิกเซลใช้เพื่อกำหนดขนาดการครอบตัด

มีคนอื่นตอบวิธีดาวน์โหลดรูปภาพดังกล่าวแล้ว ฉันแค่อยากจะฉายแสงให้คนอื่นดูเพื่อไม่ให้รับความโปรดปราน

ไชโย!


คุณดูเหมือนจะถูกต้อง ! ตลกกี่คนในพวกเราที่ถูกดูดเข้าไปสมมติว่าเจตนาร้าย การแก้ไขคำถามและแท็ก
glenviewjeff

มันเป็นคำตอบจาวาสคริปต์โปรแกรมเมอร์ (หนึ่งที่แอบย่องกับสิ่งที่นักออกแบบเว็บทำ);) ขอบคุณสำหรับจุด :)
ljgww

3

ฉันแค่ใช้ bookmarklet ของ JavaScript เพื่อแทนที่ภาพจำลองด้วยรูปภาพจริงจากนั้นคุณสามารถบันทึกหรือลากลงบนเดสก์ท็อปของคุณ

เลือกและลากรหัสด้านล่างลงบนแถบเครื่องมือบุ๊กมาร์กของเบราว์เซอร์ของคุณโดยตรงจากนั้นคลิกเพื่อเรียกใช้ในแต่ละหน้าที่คุณต้องการดูภาพจาก:

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);

สิ่งนี้จะใช้งานได้บนไซต์นี้เท่านั้นและในขณะที่ตั้งค่า HTML ไว้ในตอนนี้เท่านั้น


2

ใช้ Chrome คลิกขวาที่รูปภาพทำการตรวจสอบองค์ประกอบ ละเว้นแท็กรูปภาพและค้นหา url พื้นหลังสำหรับ div ซึ่งให้เส้นทางภาพที่แท้จริงซึ่งคุณสามารถคัดลอกโหลดลงในแท็บใหม่และบันทึก


1
ตัวอย่างเช่นอิงตามลิงก์ของคุณในคำถาม: - graphics8.nytimes.com/images/2011/09/21/dining/…
Rob Cowell

2

นี่คือโซลูชันทั่วไปที่ควรใช้ได้กับทุกเว็บไซต์

ติดตั้งและเริ่มไวโอลิน เรียกดูเว็บไซต์ด้วยภาพ

ตรวจสอบบันทึกการจราจรที่ถูกจับใน Fiddler แล้วคุณจะพบภาพทั้งหมดที่ดาวน์โหลดมายังเบราว์เซอร์ของคุณ


คุณไม่จำเป็นต้องใช้พู้ทำเล่นเพราะเบราว์เซอร์นำเสนอข้อมูลนั้นเช่นกัน (ดูคำตอบบางข้อด้านบน) นกกระจอกและปืนใหญ่
Konrad Rudolph

1
โซลูชัน Fiddler จะทำงานกับเบราว์เซอร์ทั้งหมดและแม้ว่าทรัพยากรจะโหลดผ่านแฟลชหรือวัตถุฝังตัวอื่น ๆ ตราบใดที่โหลดผ่าน HTTP หรือ HTTPS ด้วยพู้ทำเล่นขั้นตอนจะทำในลักษณะเดียวกันทุกครั้ง มิฉะนั้นขั้นตอนจะแตกต่างกันเล็กน้อยตามเว็บไซต์หรือเบราว์เซอร์ ฉันไม่ได้บอกว่านี่เป็นวิธีแก้ปัญหาที่ง่ายที่สุด แต่เป็นทางเลือกสากลที่ดี
dotnetengineer

การกล่าวถึงแหล่งข้อมูล Flash ของคุณเป็นจุดที่ค่อนข้างดี
Konrad Rudolph

2
ไม่จำเป็นต้องเพิ่มซอฟต์แวร์อีกนั่นเป็นความซับซ้อนที่เพิ่มขึ้นอย่างมากสำหรับสิ่งที่ควรเป็นกระบวนการง่ายๆ พู้ทำเล่นยังเป็นเครื่องมือสำหรับโปรแกรมเมอร์ไม่ใช่ผู้ใช้ไฟฟ้าทั่วไป
Jeff Atwood

@JeffAtwood: แม้ว่าฉันจะเห็นด้วยกับคำสั่งของคุณว่ามันจะเพิ่มความซับซ้อนที่ไม่จำเป็น (ในหลาย ๆ กรณี) ซึ่งไม่ได้คัดค้านความจริงที่ว่าการใช้พร็อกซีตัวกลางอาจเป็นวิธีที่เหมาะสมในการจับเนื้อหานี้ .
dotnetengineer

1

กดPrtScrnเปิดโปรแกรมเพ้นท์วาง

หากคุณใช้ Windows: เพื่อดักจับเฉพาะหน้าต่าง acive: Alt+ PrtScrnหาก Vista หรือสูงกว่าคุณสามารถใช้เครื่องมือ snipping เพื่อจับภาพสิ่งที่เลือกเท่านั้น


นี่เป็นคำตอบทั่วไปของพวกเขาทั้งหมดและสาเหตุที่ไม่มีในเบราว์เซอร์โซลูชันเพื่อ "ขโมย" รูปภาพ
UncleZeiv

1
อันที่จริงนี่เป็นอาการปวดถ้าภาพมีความละเอียดที่ใหญ่กว่าจอมอนิเตอร์ของคุณสามารถแสดงผลได้ - ยังคงทำได้ แต่ก็น่าเบื่อ
โทมัส

จาก OP "ฉันจะหลีกเลี่ยงการจับภาพหน้าจอนี้ได้อย่างไร"
glenviewjeff

ขอโทษ - ฉันอ่าน "สั้น" เป็น "การจัดเรียง" จากนั้นสันนิษฐานว่าคุณกำลังพูดถึง "การป้องกันหน้าจอ" เทคโนโลยีป้องกันการจับภาพหน้าจอ ["]
markmnl

1

รูปภาพทั้งหมดที่คุณเห็นในเบราว์เซอร์ของคุณจะถูกเก็บไว้ในแคชในฮาร์ดไดรฟ์ของคุณ คุณสามารถใช้เครื่องมือแคริปเพื่อดึงรูปภาพหลังจากเซสชันการเรียกดู และไม่จำเป็นต้องบันทึกทีละตัว หนึ่งในเครื่องมือที่คุณสามารถใช้เป็นcacheCopy ช่วยให้คุณสามารถเลือกเบราว์เซอร์เลือกแคช ภาพขนาดใหญ่ (ขนาดไฟล์หรือความละเอียด) ที่คุณต้องการบันทึก และยังช่วยให้คุณตั้งชื่อไฟล์ที่เหมาะสม

ข้อเสียของวิธีการนี้คุณจะต้องกรองภาพจากเว็บไซต์เป้าหมายจากที่อื่นในแคชของคุณ แต่สิ่งนี้สามารถหลีกเลี่ยงได้หากคุณล้างแคชก่อนที่จะเริ่มเรียกดูรูปภาพที่ถูกเก็บเกี่ยว นอกจากนี้เครื่องมือนี้ไม่ทำงานในโหมดส่วนตัวเนื่องจากไม่ได้ใช้แคช

คำเตือน: มันเป็นปลั๊กไร้ยางอาย ฉันเป็นผู้เขียนแอปนั้น


อืม .. เพื่อวัตถุประสงค์อะไรก็ตาม สร้างขึ้นครั้งแรกสำหรับ flickr โลภ
trailmax

0

โดยทั่วไป: Chrome / ตรวจสอบองค์ประกอบ / แท็บทรัพยากร / เฟรม / เฟรมเฉพาะในหน้า / รูปภาพ ไม่มีเล่ห์เหลี่ยมในโลกที่สามารถซ่อนภาพจากรายการนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.