iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >JavaScript怎么用油猴脚本实现去水印功能
  • 440
分享到

JavaScript怎么用油猴脚本实现去水印功能

2023-07-05 11:07:26 440人浏览 独家记忆
摘要

这篇文章主要介绍“javascript怎么用油猴脚本实现去水印功能”,在日常操作中,相信很多人在JavaScript怎么用油猴脚本实现去水印功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScrip

这篇文章主要介绍“javascript怎么用油猴脚本实现去水印功能”,在日常操作中,相信很多人在JavaScript怎么用油猴脚本实现去水印功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScript怎么用油猴脚本实现去水印功能”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

实现原理

接下来,我们就来说说,这个脚本的实现原理。那并不是任何网站都可以破解会员,是因为这个网站不够建全,我们可以利用一些前端知识来绕过付费。

打开 chrome dev tools, 在 html 中搜索 water ,我们可以搜索到带水印的 div,给这个 div 加一个样式: display none。就可以实现去水印了。 原理就是通过这一行代码实现去水印了, 现在我们可以使用截图工具截图保存即可。

JavaScript怎么用油猴脚本实现去水印功能

接下来说说,右上角的无水印下载按钮是怎么实现的。

其实设计网站实现图片下载,一般由 2 种方式:

第一种: 使用一个前端库 dom-to-img 来实现

第二种: 使用服务器 puppeteer 截图实现。

第一种方式就是它自带的按钮(极速下载测试版)

第二种服务端生成:当我们点击上面的(下载带水印)按钮,我们可以看到它的 2 个请求接口,其中有一个请求带参数 waterMark 值为 1 ,那么是否是改成 0, 就没有水印了呢?

第二个接口可以通过第一个接口返回的 uid,获得下载图片的地址。那么我们就可以自己模拟请求这个 2 个接口,来实现这一个功能。

代码分析

// ==/UserScript==// @grant        GM_addStyle// @require      https://cdn.jsdelivr.net/npm/Jquery@3.2.1/dist/jquery.min.js// @license MIT// ==/UserScript==(function () {  "use strict";  GM_addStyle(`.water,.water-tip{display:none!important}`);  const toast = (content, time) => {    return new Promise((resolve, reject) => {      let elAlertMsg = document.querySelector("#fehelper_alertmsg");      if (!elAlertMsg) {        let elWrapper = document.createElement("div");        elWrapper.innerHTML =          '<div id="fehelper_alertmsg" >' +          '<p style="background:#4caf50;display:inline-block;color:#fff;text-align:center;' +          'padding:10px 10px;margin:0 auto;font-size:14px;border-radius:4px;">' +          content +          "</p></div>";        elAlertMsg = elWrapper.childnodes[0];        document.body.appendChild(elAlertMsg);      } else {        elAlertMsg.querySelector("p").innerHTML = content;        elAlertMsg.style.display = "flex";      }      window.setTimeout(function () {        elAlertMsg.style.display = "none";        resolve && resolve();      }, time || 1000);    });  };  const headers = {    Authorization: `Token ${localStorage.getItem("__token__")}`,  };  function requestDownload(id) {    toast("已加入下载队列,请稍候。", 2000).then(() => {      $.ajax({        method: "GET",        url: `/new/udesign/checkdownload/${id}`,        headers,        dataType: "JSON",      }).then((res) => {        if (res.code === 203) {          requestDownload(id);          return false;        }        window.open(res.data.url, "_blank");      });    });  }  setTimeout(() => {    const container = document.querySelectorAll(".ant-space-item")[10];    $(container)      .CSS({ display: "flex" })      .append(        '<buttton id="tm-download"  class="ant-btn ant-btn-primary">无水印下载</button>'      );    $("#tm-download").on("click", () => {      const queryString = window.location.search;      const urlParams = new URLSearchParams(queryString);      const bid = urlParams.get("bid");      $.ajax({        method: "GET",        url: `/new/udesign/downloadAsync/${bid}`,        headers,        dataType: "json",        data: {          width: parseInt($(".canvas-view-item").text()),          height: parseInt($(".canvas-view-item:eq(1)").text()),          id: bid,          fORMat: "png",          watermark: 0,          role_type: 3,          preview_path: "/bill/output",          fast_download: false,        },      }).then((res) => {        console.log(res);        requestDownload(res.data.uid);      });    });  }, 1000);})();

首先我们通过 require 加入 jquery,方便我们 dom 操作,然后通过一个定时器,在 dom 加载之后,往右上角插入一个无水印下载的按钮。

点击这个按钮,模拟调用刚才的 2 个接口,并且发送参数:bid、图片的宽度、高度。

  • bid: 也就是 url 上的 id。

  • 图片宽度和高度:也就是页面上输入的值。

最后我们通过接口返回的图片地址,使用 window.open 方法实现图片下载。

到此,关于“JavaScript怎么用油猴脚本实现去水印功能”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: JavaScript怎么用油猴脚本实现去水印功能

本文链接: https://www.lsjlt.com/news/351283.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JavaScript利用油猴脚本实现去水印功能
    目录前言脚本演示实现原理代码分析前言 上周微信公众号推出了一种新的形式,类似小红书这样子,群里有小伙伴调侃,是否是小红书的产品经理跳槽到微信了,那作为一个公众号运营者,我也想利用这一...
    99+
    2023-03-10
    JavaScript油猴脚本实现去水印 JavaScript去水印 JavaScript油猴脚本
  • JavaScript怎么用油猴脚本实现去水印功能
    这篇文章主要介绍“JavaScript怎么用油猴脚本实现去水印功能”,在日常操作中,相信很多人在JavaScript怎么用油猴脚本实现去水印功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScrip...
    99+
    2023-07-05
  • 使用python实现简单去水印功能
    在做视频或者图片处理的时候,我们经常会遇到存在水印的情况,或者我们需要去除图片的某一个部分,这时候我们就需要想办法去除不需要的这一部分。下面这个工具能够控制鼠标将图片上的任意部分改变...
    99+
    2024-04-02
  • C++OpenCV实现图像去水印功能
    目录前言一、水印定位二、图像修复三、效果显示四、源码总结前言 本文将使用OpenCV C++ 进行简单图像水印去除。我们在网上download图片时,经常因为版权问题有水印。本案例通...
    99+
    2024-04-02
  • JavaScript实现简易的水印覆盖功能
    目录一、效果二、JS 代码三、总结与思考一、效果 处理之前 DIV IMG 处理之后 DIV IMG 这里添加 “水印”(其实并不是真正的水印) 到 ...
    99+
    2022-12-09
    JavaScript实现水印覆盖 JavaScript水印覆盖 JavaScript水印
  • Java怎么实现抖音去水印
    本篇内容主要讲解“Java怎么实现抖音去水印”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java怎么实现抖音去水印”吧!一、前言抖音去水印方法很简单,以前一直没有去研究,以为搞个去水印还要用到...
    99+
    2023-06-29
  • 怎么用Python实现抖音视频去水印
    这篇文章主要介绍“怎么用Python实现抖音视频去水印”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么用Python实现抖音视频去水印”文章能帮助大家解决问题。Videoparse提供视频去水印解...
    99+
    2023-06-04
  • php怎么实现抖音视频去水印
    本篇内容主要讲解“php怎么实现抖音视频去水印”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php怎么实现抖音视频去水印”吧!这里说的解析抖音无水印视频是通过调用第三方接口来完成的,这个第三方平...
    99+
    2023-06-04
  • JavaScript图片打印功能怎么实现
    这篇文章主要讲解了“JavaScript图片打印功能怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript图片打印功能怎么实现”吧!其实浏览器 window 对象提供了 ...
    99+
    2023-07-05
  • 怎么用JavaScript实现网页视频添加水印
    这篇“怎么用JavaScript实现网页视频添加水印”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用JavaScript...
    99+
    2023-06-29
  • 怎么用1行Python代码实现去除图片水印
    这篇“怎么用1行Python代码实现去除图片水印”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用1行Python代码实现...
    99+
    2023-07-05
  • 怎么用java实现打印功能
    要使用Java实现打印功能,可以使用Java的打印API来完成。下面是一个简单的示例代码,演示了如何使用Java打印API实现打印功...
    99+
    2023-10-24
    java
  • Shell脚本怎么实现防CC攻击功能
    这篇文章主要讲解了“Shell脚本怎么实现防CC攻击功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Shell脚本怎么实现防CC攻击功能”吧!实现代码:代码如下:#!/bin/shcd&n...
    99+
    2023-06-09
  • mfc怎么实现打印功能
    MFC(Microsoft Foundation Classes)是微软的一套面向对象的程序库,用于开发Windows应用程序。在M...
    99+
    2023-10-24
    mfc
  • shell脚本怎么实现ssh自动登录功能
    本篇内容介绍了“shell脚本怎么实现ssh自动登录功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!文件名:ssh_auto_login代...
    99+
    2023-06-09
  • Vue怎么用插件实现打印功能
    这篇文章主要介绍“Vue怎么用插件实现打印功能”,在日常操作中,相信很多人在Vue怎么用插件实现打印功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue怎么用插件实现打印功能”的疑惑有所帮助!接下来,请跟...
    99+
    2023-07-05
  • C#中怎么实现打印功能
    这期内容当中小编将会给大家带来有关C#中怎么实现打印功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C#实现打印功能具体的操作步骤如下:创建一个PrintDialog的实例。如下:System.Wind...
    99+
    2023-06-17
  • 怎么用Vue3指令实现水印背景
    页面水印业务相信我们都有遇过,为什么需要给页面添加水印?为了保护自己的版权和知识产权,给图片加上水印一般是为了防止盗图者用于商业用途,损害原作者的权益。那么在我们开发当中有什么方法可以实现呢?一般分为前端实现和后端实现这两种方法,本文主要是...
    99+
    2023-05-14
    Vue3
  • JavaScript怎么实现一键复制文本功能
    这篇文章主要介绍了JavaScript怎么实现一键复制文本功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript怎么实现一键复制文本功能文章都会有所收获,下面我们一起来看看吧。一、navigat...
    99+
    2023-07-05
  • 怎么用JS实现覆盖水印效果
    这篇“怎么用JS实现覆盖水印效果”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用JS实现覆盖水印效果”文章吧。一、效果处...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作