印網頁資料,被禁用了右鍵不讓復制,這個方法可以簡單的幫我們解決。
今天來了一位客戶,想打印一些資料,內容是來自某個網站上的一些文字,當我去復制的時候,才發現不讓復制,被禁用了鼠標右鍵,無論你怎么點都沒反應,整個頁面像是一幅圖片,于是搜索各種解除辦法,但都是比較繁瑣的一些招數,看的頭暈眼花,有的還要讓你下載插件安裝,這些都不能快速解決,不是我想要的方法,弄了好一會,終于找到了有效還簡單的方法,現在分享出來,讓有需要的人不在走彎路,節省時間,收藏一下以備不時之需要。
首頁用瀏覽器打開不讓復制的頁面,這里可以用普通瀏覽器或是某60瀏覽器,打開頁面后,我們要按一下鍵盤上的F12,這時候就會在當前網頁右邊跳出一個小頁面,點一下上面的小齒輪,一般我們把它稱做“設置”
進入小齒輪后,默認是第一個分類,我們要滑動鼠標輪,往下走到最底部,找到調試程序下面的第一個選項,停用JavaScript,給前面的方框打上對溝,這個時候不要關閉這個小頁面, 要是關閉了就失效了,也就是從頭要再來一次。
這個時候你再去復制網頁上的內容,看看是不是可以復制了。
說到這里,我還找到了一個更簡單的辦法,這個方法也給大家分享出來,希望有更多的人知道和學會。
在不讓復制的頁面,我們直接按下鍵盤上的ctrl+p,試試效果,是不是非常輕松的就解決了不讓復制的問題,這個辦法更簡單,更快捷,還可以直接打印,也可以把內容復制出來。
尋找方法不容易,喜歡的就收藏一下,您的支持就是我的動力。
兩天有個客戶需要把網頁轉為pdf,之前也沒開發過類似的工具,就在百度搜索了一波,主要有下面三種
在百度(我一般用必應)搜索“在線網頁轉pdf”就有很多可以做這個事的網站,免費的如
各種pdf的操作都有,免費使用,速度一般。
官網地址https://tools.pdf24.org/zh
PDF24 Tools
開源免費項目,使用golang寫的,提供在線轉
官網地址http://doctron.lampnick.com/
doctron在線體驗demo
還有挺多其他的,可以自己搜索,但是都不符合我的預期。
Doctron,這是我今天要介紹的重頭戲。
Doctron是基于Docker、無狀態、簡單、快速、高質量的文檔轉換服務。目前支持將html轉為pdf、圖片(使用chrome(Chromium)瀏覽器內核,保證轉換質量)。支持PDF添加水印。
管他的,先把代碼下載下來再說
git clone https://gitcode.net/mirrors/lampnick/doctron.git
倉庫
運行
go build
./doctron --config conf/default.yaml
運行截圖
轉pdf,訪問http://127.0.0.1:8080/convert/html2pdf?u=doctron&p=lampnick&url=<url>,更換鏈接中的url為你需要轉換的url即可。
轉換效果
然后就可以寫程序去批量轉換需要的網頁了,但是我需要轉換的網頁有兩個需求
1、網站需要會員登錄,不然只能看得到一部分
2、需要把網站的頭和尾去掉的
這就為難我了,不會go語言啊,硬著頭皮搞了,肯定有個地方打開這個url的,就去代碼慢慢找,慢慢調試,功夫不負有心人,終于找到調用的地方了。
第一步:添加網站用戶登錄cookie
添加cookie之前
添加cookie之后
第二步:去掉網站頭尾
chromedp.Evaluate(`$('.header').css("display" , "none");
$('.btn-group').css("display" , "none");
$('.container .container:first').css("display" , "none");
$('.breadcrumb').css("display" , "none");
$('.footer').css("display" , "none")`, &ins.buf),
打開網頁后執行js代碼把頭尾隱藏掉
第三步:程序化,批量自動生成pdf
public static void createPDF(String folder , String cl , String pdfFile, String urlhref) {
try {
String fileName=pdfFile.replace("/", ":");
String filePath=folder + fileName;
File srcFile=new File(filePath);
File newFolder=new File("/Volumes/disk2/myproject" + File.separator + cl);
File destFile=new File(newFolder, fileName);
if(destFile.exists()){
return;
}
if(srcFile.exists()){
//移動到對應目錄
if(!newFolder.exists()){
newFolder.mkdirs();
}
FileUtils.moveFile(srcFile , destFile);
return;
}
if(!newFolder.exists()){
newFolder.mkdirs();
}
String url="http://127.0.0.1:8888/convert/html2pdf?u=doctron&p=lampnick&url="+urlhref;
HttpEntity<String> entity=new HttpEntity<String>(null, null);
RestTemplate restTemplate=new RestTemplate();
ResponseEntity<byte[]> bytes=restTemplate.exchange(url, HttpMethod.GET, entity, byte[].class);
if (bytes.getBody().length <=100) {
if(urlList.containsKey(urlhref)){
Integer failCount=urlList.get(urlhref);
if(failCount > 3){
System.out.println("下載失?。?#34; + cl + " / " + pdfFile +" " + urlhref);
return;
}
failCount++;
urlList.put(urlhref , failCount);
}else{
urlList.put(urlhref , 1);
}
createPDF(folder , cl , pdfFile , urlhref);
}else{
if (!destFile.exists()) {
try {
destFile.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}
}
try (FileOutputStream out=new FileOutputStream(destFile);) {
out.write(bytes.getBody(), 0, bytes.getBody().length);
out.flush();
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
最終成果:
文件夾分類存放
pdf文件
有時候我們在網上找到有用的資料時,總想把它復制下來,以備后用;但往往是不能進行復制操作,這是網站設置了使用權限,需要購買VIP才能下載下來,此時頓感遺憾和無奈。是不是真的沒有辦法了呢?答案是肯定的,有的是方法!
實現復制網頁上的圖片和文字有多種方法,如:“網頁保存法”、“網頁打印法”、“圖片轉文字”、“代碼查看法”“后臺控制法”“代碼提取法”等等。筆者逐一進行了試用,其結果是有些方法可以,有些方法不行。下面以電腦操作系統Win10為例,介紹兩種簡單實用的復制網頁上圖片和文字的方法。
一、網頁打印法:
第一步:復制粘貼文字內容。
打開網頁,在需用文檔的空白處,點擊鼠標右鍵,在彈出的菜單中點擊“打印”按鈕,如下圖:
在上圖中按住鼠標左鍵,選中需要復制的內容,再點擊鼠標右鍵,在彈出的菜單中點擊“復印”,然后將復制的內容粘貼到Word文檔中即可(一篇文章可能需要多次復制)。結果如下:
第二步:復制粘貼圖片。
將光標移至圖片上,點擊鼠標右鍵,在彈出的菜單中選取點擊“圖片另存為”按鈕,將圖片暫時存放在桌面上,以備后用。
將放在桌面上的圖片,復制粘貼到上面文檔的對應位置即可。整個結果如下:
二、圖片轉文字:
第一步:截取文檔圖片。
打開網頁,找到需要復制的內容,點擊工具欄里的“小剪刀”,按住鼠標左鍵,選住需要復制的文檔,點擊“復制”在彈出的菜單中,將圖片保存路徑設置在桌面,然后點擊“保存”即可。這時復制的文檔圖片已經存在了桌面上。復制過程如下圖:
第二步:借助“電腦微信”或“電腦騰訊QQ”圖片轉文字。
在電腦上打開“微信”,在搜索欄里輸入“去水印用輕抖”,在依次彈出的菜單中分別點擊“輕抖”、“圖片轉文字”、“相冊/拍照”,然后選中存放在桌面的圖片,點擊“打開”即可將圖片轉成文字。這時將文字復制粘貼到Word文檔中即可。
當然也可以用手機拍照圖片,通過手機微信里的“文件傳輸助手”、“去水印用輕抖”,實現圖片轉文字,但因手機拍圖片清晰度低,導致圖片轉文字差錯率高,不建議使用。
電腦騰訊QQ”圖片轉文字與電腦微信圖片轉文字,大同小異,都是利用自身多功能來實現的,在這里就不再贅述。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。