目的
許多網頁都不允許複制,隻有進行開通VIP,注冊使用者,使用專業工具等才能完成ctrl+c和ctrl+v等簡單操作。本文提供了一種比較簡(cu)單(bao)的解決方案。
注意!
這篇文章話很直(bie)率(niu)!也不一定有效!甚至可能産生失誤!請謹慎閱讀!
原理(大神請略過)
Web頁面的結構是基于DOM樹的。Web的内容會在DOM節點上展現。隻要複制DOM節點上的内容,就可以擷取頁面上呈現的内容了。此外,一般的禁止複制都是用Javascript/CSS實作一些DOM屬性的控制,或者對copy事件的監聽。這可以有效地防止對web内容的直接複制,但不影響對部分DOM源代碼的閱讀。我們隻要從這些DOM源代碼裡提取文字内容,即可。
舉例(百度文庫)
我們先選擇需要複制的内容,然後右鍵彈出菜單。
這裡以Firefox 72 英文版為例,選擇“View Selection Source“(檢視選擇的源碼)。會彈出一個代碼視窗。
Firefox已經幫我們将選擇的文字選擇了。即:
整理(為了友善閱讀,實際操作可省略),即:
<p class="reader-word-layer reader-word-s2-15 reader-word-s2-16"
style="width:4280px;height:180px;line-height:180px;top:2498px;left:2509px;z-index:201;letter-spacing:-0.38px;false">
http://192.168.1.1/cgi-bin/telnetenable.cgi?telnetenable=1
</p>
複制上圖
<p> ... </p>
标簽中的文字即可。得到:
http://192.168.1.1/cgi-bin/telnetenable.cgi?telnetenable=1
其他頁面依次類推。
拓廣
實際應用中,可以編寫一個腳本之類的友善複制,直接View page source将所有的DOM code作為輸入然後輸出純文字内容。