Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
們平時在網上查找資料,看到自己需要的內容,發現網頁文本禁止復制粘貼,今天就來教你,花一分鐘時間,學會下面這六個套路,輕松突破限制。
打開你需要復制內容的網頁,在瀏覽器地址欄輸入“javascript:void($={});”這串代碼,然后按下回車鍵,這時候就允許你復制文本了。
(注意:一定要手動輸入代碼,復制粘貼的無效)
我們還可以利用打印網頁的時候,在預覽頁面將文本復制下來。按下快捷鍵【Ctrl+P】,將會進入打印界面,直接在右側的預覽界面,選中文本進行復制。
打開網頁后,按下功能鍵【F12】,進入網頁后臺找到【Console】,在下面輸入這串符號“$=0”,再2按下回車鍵,網頁文字就能自由復制了。
你還可以在網頁空白處,右擊選擇【查看頁面源代碼】,然后一直向下滑動,找到密密麻麻的文本,選中直接復制提取出來。
打開網頁鼠標右擊,選擇【網頁另存為】,然后在彈出的窗口中,將保存類型改為【網頁,僅HTML】,接著點擊【保存】。
關閉當前網頁,回到桌面找到剛剛保存的本地網頁文件,雙擊打開后,就可以隨意復制啦。
此外,我們還可以利用OCR文字識別技術,將網頁文字識別出來。需要借助掌上識別王工具,找到【文字識別】-【快速截圖識別】功能。
然后使用截圖快捷鍵【ALT+F】,在網頁中將你需要的內容截取下來,上傳到這里,接著點擊【立即識別】,1秒就能提取文字。
網頁文本禁止復制粘貼?一分鐘學會上面這六個套路,輕松突破限制,全網任意復制。
明:文章內容僅用于學習交流,切勿不當使用。
上網的時候經常會遇到網頁禁止復制文本或者禁止文檔下載的情況。今天結合案例分析下實現這些限制的手法和解除辦法。
首先創建一個demo.html的文檔,文檔內容如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>DEMO</title>
<style>
body {background-color: aqua;}
</style>
</head>
<body>
<div class="content">測試文本測試文本測試文本</div>
<script>
let htmlEle = document.documentElement;
let bodyEle = document.querySelector('body');
htmlEle.addEventListener('selectstart', (e) => {
e.preventDefault();
});
bodyEle.addEventListener('copy', (e) => {
e.preventDefault();
});
bodyEle.addEventListener('selectstart', (e) => {
e.preventDefault();
});
bodyEle.addEventListener('contextmenu', (e) => {
e.preventDefault();
});
</script>
</body>
</html>
打開文檔可以發現,頁面文本是無法選擇并復制的。因為如代碼所示,頁面元素被綁定了幾個事件(選擇、拷貝、右鍵菜單),阻止了用戶對文本的復制企圖。
怎么辦呢?
打開瀏覽器的開發者工具,切換到Elements標簽下,選擇文本元素,這時可以在下方的“事件監聽器”中查看到目標元素及其祖先元素上綁定的事件。展開這些相關的事件,可以看到“移除”按鈕,接下來只需點擊按鈕將這些限制事件移除便可以復制了。
上述辦法是在事件綁定后,再將它們移除。此外,也可以通過抓包改包的方式移除綁定事件相關的代碼,從源頭阻止事件的綁定。這需要抓包工具的輔助,這里用到的是Fiddler。
假設網頁部署在本地服務器上,首先,打開Fiddler,在右側切換到“自動轉發”面板(帶閃電圖標的),勾選圖中兩個選項;然后添加規則,填上要更改的請求地址以及要替換的本地文件(假設為demo1文件,內容如下),填好后保存。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>DEMO</title>
<style>
body {background-color: #dedede;}
</style>
</head>
<body>
<div class="content">測試文本測試文本測試文本</div>
</body>
</html>
設置好以后再次刷新網頁,會發現頁面的背景色發生了變化,而且文本也可以直接復制了。
此處以網上的一個文檔為例,文檔可以在線查看,但是無法直接下載。通過開發者工具選中文檔,可以看到它對應了一個img標簽(以前是canvas),我們可以將圖片保存到本地,但是如果頁面比較多,手動操作就很麻煩,所以可以用代碼幫我們自動執行,將圖片合并成pdf文件并下載到本地。
以下代碼可做參考:
function loadScript (url) {
let ele = document.createElement('script')
ele.src = url
document.body.appendChild(ele)
}
function img2dataUrl (options) {
let result = ''
let img = options.img || ''
let width = options.width || img.naturalWidth || img.clientWidth
let height = options.height || img.naturalHeight || img.clientHeight
let quality = options.quality || 100
let mimeType = options.mimeType || 'image/png'
let canvas = document.createElement('canvas')
canvas.width = width
canvas.height = height
let ctx = canvas.getContext('2d')
ctx.drawImage(img, 0, 0, img.naturalWidth, img.naturalHeight, 0, 0, width, height)
result = canvas.toDataURL(mimeType, quality / 100)
return result
}
loadScript('https://cdn.bootcdn.net/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js')
function img2pdf () {
let imgArr = [...document.querySelectorAll('.reader_inner img')]
if (imgArr.length === 0) return
let doc = new jspdf.jsPDF({unit:'px'});
imgArr.forEach((v,i) => {
v.setAttribute("crossOrigin",'anonymous');
let pxPermm = v.width / 210 / 2.2;
let imgData = img2dataUrl({img:v}).slice('data:image/png;base64,'.length);
(i > 0) && doc.addPage();
doc.addImage(imgData, 'png', 0, 0, v.width / pxPermm, v.height / pxPermm);
})
doc.save('img2pdf.pdf');
}
將代碼放到控制臺或者代碼段中執行,執行后,再在控制臺調用 img2pdf() 方法即可將可瀏覽的頁面合并成PDF下載到本地。
這個VBA程序將一個Excel工作簿保存為一個網頁文件,允許你將Excel的數據和格式轉換成一個網頁以供在線查看或共享。
下面是保存工作簿為網頁的VBA語法:
ActiveWorkbook.SaveAs Filename:="文件路徑\文件名.htm", FileFormat:=xlHtml
假設你有一個名為 "SampleWorkbook.xlsx" 的工作簿,你想將其保存為一個網頁文件,文件名為 "SampleWebPage.htm",并保存在同一目錄下。
以下是VBA代碼示例,用于將工作簿保存為網頁文件:
Sub SaveAsWebPage()
Dim FilePath As String
FilePath = ThisWorkbook.Path & "\SampleWebPage.htm"
On Error Resume Next
ActiveWorkbook.SaveAs Filename:=FilePath, FileFormat:=xlHtml
On Error GoTo 0
If Dir(FilePath) <> "" Then
MsgBox "工作簿已成功保存為網頁文件:" & FilePath, vbInformation, "保存成功"
Else
MsgBox "無法保存工作簿為網頁文件。", vbExclamation, "保存失敗"
End If
End Sub
運行上述代碼后,如果成功保存工作簿為網頁文件,你將看到一個消息框顯示保存成功,并提供保存的文件路徑。如果保存失敗,你將看到一個保存失敗的消息框。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。