吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10179|回复: 720
收起左侧

[其他原创] 【第三弹】油猴解析某学术网站(weipu)文章下载链接

    [复制链接]
shu810687117 发表于 2023-12-10 13:30
本帖最后由 shu810687117 于 2023-12-10 13:42 编辑

如果出现获取链接失败,可以等等再试,对大家有帮助的话,后续继续更新其他站
更新说明
  • 修复了上个版本wanfang解析失败的问题
  • 更新了对weipu的下载支持
  • 当前支持zhiwang、wanfang、weipu
  • 最新比较忙,更新比较慢,后续将持续更新其他站


简介:
  • 使用油猴脚本在网页上插入按钮,按钮获取到网页上文件的ID,来调用外部接口实现免登录对文章进行下载。有问题欢迎回帖,看到会回复的。
  • 如果进入网页有按钮显示是正常,只有文章详情页面才会渲染按钮,有按钮说明脚本启动成功了。成功下载会弹出新窗口,如果新窗口被阻止了,需要允许一下。自己测试了火狐和edga浏览器。

使用方法:
  •   访问油猴脚本的链接一键安装(推荐)
  •   下载附件复制到油猴中
  •   复制脚本后,在油猴中新建脚本粘贴-保存。

注意:
  • 如果不成功,检查一下油猴插件是不是有访问所有URL的权限。
  • 不过当前接口有限制一天只能成功下载三次,大家自行使用吧。



维普.png



学术下载解析工具-知网-万方-维普
https://scriptcat.org/zh-CN/script-show-page/1397



usre.zip (3.86 KB, 下载次数: 296)


[JavaScript] 纯文本查看 复制代码
// ==UserScript==
// @name         学术下载解析工具-知网-万方-维普
// @namespace    [url]http://tampermonkey.net/[/url]
// @version      1.2
// @description  去其他
// @author       XiaoM
// @match        https://*.cnki.net/kns8s/*
// @match        https://*.cnki.net/kcms2/*
// @match        [url]https://d.wanfangdata.com.cn/[/url]*
// @match        [url]https://lib.cqvip.com/Qikan/Article/[/url]*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant        unsafeWindow
// @require      [url]https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js[/url]
// @require      [url]https://unpkg.com/layui@2.8.18/dist/layui.js[/url]
// @connect      xuexi365.top
// @connect      wanfangdata.com.cn
// @grant         GM_xmlhttpRequest
// @grant        GM_getResourceText
// @grant GM_cookie

// ==/UserScript==


(function () {



  'use strict';
  /* globals jQuery, $, waitForKeyElements */

  var $ = unsafeWindow.jQuery;

  //this.$ = this.jQuery = jQuery.noConflict(true);

// @require      file://D:\Microsoft VS Code\project\ZW下载\index.js
  var link = document.createElement('link');
  link.rel = "stylesheet"
  link.href = 'https://unpkg.com/layui@2.8.18/dist/css/layui.css';
  document.head.appendChild(link);


  // var script = document.createElement('script');
  // script.src = 'http://www.xuexi365.top/msg.js?'+Date.now();
  // document.head.appendChild(script);




  var  msgJson="";
  var help_content="";
  GM_xmlhttpRequest({
    method: "GET",
    url: "http://www.xuexi365.top/msg.json?"+Date.now(),
    anonymous: true,
    responseType :"json",
    headers: {
      "Content-Type": "application/json"
    },
    onload: function (res) {

      msgJson=res.response;
      help_content=decodeURIComponent(msgJson.updata_content)+decodeURIComponent(msgJson.link_content)+decodeURIComponent(msgJson.use_content);

      if(msgJson.msg_active!=0){
        layer.open({
          type: 1,
          offset: ['16px', '16px'], // 详细可参考 offset 属性
          id: 'ID-demo-layer-offset-1', // 防止重复弹出
          content:'<div style="padding: 16px;">'+ msgJson.msg_content +'</div>',
          area: '240px',
          title:false,
          btn: ['确定 [ 8秒后关闭 ]'],
          time:8000,
          anim:2,
          //offset:'rb',
          btnAlign: 'c', // 按钮居中
          shade: 0, // 不显示遮罩
          btn1: function(){
            layer.closeAll();
          }
        });
      }




    },
    onerror: function () {

    }
  });







  function download(url, data) {


    var loadIndex = layer.msg('正在获取下载地址', {
      icon: 16,
      shade: 0.11,
      time: 300000,
      shadeClose: false
    });


    //console.log({dataFilename,dataDbname,orderid})


    //let url="http://www.xuexi365.top/api_zw/RTVC875CY"
    GM_xmlhttpRequest({
      method: "POST",
      url: url,
      data: data,
      anonymous: true,
      headers: {
        "Accept": "application/json, text/javascript, */*; q=0.01",
        "Content-Type": "application/json; charset=utf-8"


      },
      onload: function (res) {

        console.log(res.responseText)

        try {
          var json = JSON.parse(res.responseText);
        } catch (err) {
          layer.close(loadIndex);
          layer.alert("[0X86889]网络错误,请重试,如多次错误,请联系管理源");
          return;
        }

        try {
          $.isEmptyObject(json.data.code)
        } catch (err) {
          layer.close(loadIndex);
          layer.alert("[0X83889]网络错误,请重试,如多次错误,请联系管理源");
          return;
        }


        if (json.data.code > 0) {
          layer.close(loadIndex);

          layer.alert(json.data.msg);
          window.open(json.data.url, "_blank");
        } else {
          layer.close(loadIndex);
          layer.alert(json.data.msg);
        }

      },
      onerror: function () {
        layer.close(loadIndex);
        layer.alert('出现错误,请重试');
      }
    });

  }





  layui.use(function () {
    var util = layui.util;

    var bars = [];

    if (location.pathname.search('kns8s') > 0) {
      //查询页面

    } else if (location.pathname.search('kcms2') > 0) {

      //详情页面
      bars = [{ // 定义可显示的 bar 列表信息 -- v2.8.0 新增
        type: 'help',
        style: 'background-color: #ff5722',
        icon: 'layui-icon-app'
      }, {
        type: 'download_caj',

        icon: 'layui-icon-download-circle',
        style: 'background-color: #3594ff;'
      }, {
        type: 'download_pdf',

        icon: 'layui-icon-download-circle',
        style: 'background-color: #5d9e2b;'
      }]
    } else if (location.origin == 'https://d.wanfangdata.com.cn') {

      //万方
      bars = [{ // 定义可显示的 bar 列表信息 -- v2.8.0 新增
        type: 'help',
        icon: 'layui-icon-app',
        style: 'background-color: #ff5722'
      }, {
        type: 'download_wf',
        icon: 'layui-icon-download-circle',
        style: 'background-color: #5d9e2b;'
      }]


    }else if (location.origin == 'https://lib.cqvip.com') {

      //维普
      bars = [{ // 定义可显示的 bar 列表信息 -- v2.8.0 新增
        type: 'help',
        icon: 'layui-icon-app',
        style: 'background-color: #ff5722'
      }, {
        type: 'download_vp',
        icon: 'layui-icon-download-circle',
        style: 'background-color: #5d9e2b;'
      }]


  }






    // 自定义固定条
    util.fixbar({
      bars: bars,
      // bar1: true,
      // bar2: true,
      default: false, // 是否显示默认的 bar 列表 --  v2.8.0 新增
      // bgcolor: '#393D52', // bar 的默认背景色
      css: { bottom: 200 },
      // target: '#target-test', // 插入 fixbar 节点的目标元素选择器
      // duration: 300, // top bar 等动画时长(毫秒)
      on: { // 任意事件 --  v2.8.0 新增
        mouseenter: function (type) {

          if (type == 'help') {
            var content = "如何使用"
          } else if (type == 'download') {
            var content = "帮我下载"
          } else if (type == 'download_caj') {
            var content = "下载CAJ"
          } else if (type == 'download_pdf') {
            var content = "下载PDF"
          } else if (type == 'download_wf') {
            var content = "下载PDF"
          }else if (type == 'download_vp') {
            var content = "下载PDF"
          }


          layer.tips(content, this, {
            tips: 4,
            fixed: true
          });
        },
        mouseleave: function (type) {
          layer.closeAll('tips');
        }
      },
      // 点击事件
      click: function (type) {
        console.log(this, type);

        if (type == 'help') {


          // layer.open({
          //   type: 1,
          //   area: ['420px', '240px'], // 宽高
          //   content: ''
          // });



          layer.open({
            type: 1,
            offset: 'l',
            anim: 'slideRight', // 从左往右
            area: ['320px', '100%'],
            shade: 0.1,
            shadeClose: true,
            id: 'ID-demo-layer-direction-l',
            content: help_content
          });



        } else if (type == 'download') {

          var selectCount = $("#selectCount").text();
          if (selectCount != 1) {

            layer.tips("请查看这里,是否选定的不是一个", "#selectCount", {
              tips: [1, '#ff5722'],
              time: 10000
            })
            layer.msg('您没有选择或则选择了多个!');

            return
          }


          var FileNameSNZKPT = localStorage.getItem('FileNameSNZKPT');
          var input = $('input[value="' + FileNameSNZKPT + '"]').val()
          if (input != FileNameSNZKPT) {
            layer.msg('请查看是否选择的内容不在本页面!');

            return
          }

          //children('.icon-collect').attr('data-filename')
          var dataFilename = $('input[value="' + FileNameSNZKPT + '"]').parent("td").parent("tr").find('.icon-collect').attr("data-filename");
          var dataDbname = $('input[value="' + FileNameSNZKPT + '"]').parent("td").parent("tr").find('.icon-collect').attr("data-dbname");
          var orderid = $('input[value="' + FileNameSNZKPT + '"]').parent("td").parent("tr").find('.downloadlink').attr("href");

          const regex = /order\?id=(.*)/i;
          var match = regex.exec(orderid);
          if (match) {
            orderid = match[1]
          }

          layer.confirm('这里下载可能是CAJ格式,需要PDF需要进入文章详情页点击按钮,确定要下载码?', { icon: 3 }, function () {
            let url = "http://www.xuexi365.top/api_zw/RTVC875CY"
            let data = JSON.stringify({ 'dataFilename': dataFilename, 'dataDbname': dataDbname, 'orderId': orderid })
            download(url, data)
          }, function () {
            // layer.msg('点击取消的回调');
          });





        } else if (type == 'download_caj' || type == 'download_pdf') {

          var dataFilename = $('#param-filename').val();
          var dataDbname = $('#param-dbname').val();
          if (type == 'download_caj') {
            var orderid = $('#cajDown').attr("href");

          } else if (type == 'download_pdf') {
            var orderid = $('#pdfDown').attr("href");
          }

          const regex = /order\?id=(.*)/i;
          var match = regex.exec(orderid);
          if (match) {
            orderid = match[1]
          }

          let url = "http://www.xuexi365.top/api_zw/RTVC875CY"
          let data = JSON.stringify({ 'dataFilename': dataFilename, 'dataDbname': dataDbname, 'orderId': orderid })

          download(url, data)


        } else if (type == 'download_wf') {
          //var downloadlink=$('.download .buttonItem').attr("href");
          var downloadlink = $('.download').attr("href");
          console.log(downloadlink)

          GM_xmlhttpRequest({
            method: "HEAD",
            url: downloadlink,
            anonymous: true,
            onload: function (res) {
              var url = res.finalUrl;
              console.log("url:",url)
              // 解析URL参数
              var params = new URL(url);
              // 获取指定参数的值
              var paramValue = params.searchParams.get("service");

              console.log(paramValue);

              let queryurl = "http://www.xuexi365.top/api_wf/EDIDN5D5DP"
              let data = JSON.stringify({ 'url': downloadlink })
              download(queryurl, data)


            },
            onerror: function () {
              layer.close(loadIndex);
              layer.alert('出现错误,请重试');
            }
          });

        }else if (type == 'download_vp') {
          //var downloadlink=$('.download .buttonItem').attr("href");
          // var downloadlink = $('.download').attr("href");
          // console.log(downloadlink)

          // let queryurl = "http://www.xuexi365.top/api_vp/LDIDN0D5DP"
          // let data = JSON.stringify({ 'id': downloadlink,'info':'' })
          // download(queryurl, data)
          var fullText=$('.icon-free').parent('a').attr('onclick')
          var startIndex = fullText.indexOf("(") + "(".length;
          var endIndex = fullText.indexOf(")", startIndex);
          var extractedText = fullText.substring(startIndex, endIndex);
          var str_arr= extractedText.split(',');
          var id=str_arr[0].replace(/'/g, "");
          var info=str_arr[1].replace(/'/g, "");

          //console.log(id,info)

          let queryurl = "http://www.xuexi365.top/api_vp/LDIDN0D5DP"
          let data = JSON.stringify({ 'id': id,'info':info })
          console.log(data)
          download(queryurl, data)



        }


      }
    });

    //隐藏知网原本滚动条
    $('.fixedbar').hide();
    $('.anxs-left-bom').hide();
    $('.web-tools').hide();



  });









})();










免费评分

参与人数 102吾爱币 +105 热心值 +89 收起 理由
ansin0520 + 1 + 1 谢谢@Thanks!
DDDU + 1 + 1 用心讨论,共获提升!
warron007 + 1 + 1 谢谢@Thanks!
罗木魄 + 1 + 1 谢谢@Thanks!正好回家了需要用到。
weidechan + 1 + 1 用心讨论,共获提升!
st200712 + 1 + 1 用心讨论,共获提升!厉害啊
zzdqcsx + 1 热心回复!
WAPJ20220721 + 1 谢谢@Thanks!
锂电是信仰 + 1 + 1 我很赞同!
twodoors + 1 谢谢@Thanks!
DaiTian + 1 + 1 谢谢 @Thanks!
qjlfl + 1 + 1 热心回复!
lsyh1688 + 1 + 1 谢谢@Thanks!
zc1313113 + 1 + 1 我很赞同!
sunlei658 + 1 + 1 谢谢@Thanks!
sideD + 1 我很赞同!
zicely + 1 谢谢@Thanks!
zjun777 + 1 + 1 用心讨论,共获提升!
theStyx + 2 + 1 谢谢@Thanks!
Unicorn_pojie + 1 + 1 鼓励转贴优秀软件安全工具和文档!
hanlaoshi + 1 + 1 谢谢@Thanks!
wodes + 1 + 1 感谢
whink + 1 + 1 谢谢@Thanks!
jiaabz + 1 + 1 我很赞同!
gh0815 + 1 + 1 谢谢@Thanks!
vostro5 + 1 + 1 谢谢@Thanks!
hui00000 + 2 + 1 支持支持支持
skiss + 1 + 1 谢谢@Thanks!
王毛234 + 1 + 1 谢谢@Thanks!
ty_stone + 1 热心回复!
731 + 1 + 1 谢谢@Thanks!
chuan9 + 1 + 1 用心讨论,共获提升!
sunline + 1 + 1 谢谢@Thanks!
lucky2024 + 1 我很赞同!
voyager1 + 1 + 1 谢谢@Thanks!
Amos_N + 1 热心回复!
ONLIIIII + 1 谢谢@Thanks!
lustrum + 1 + 1 用心讨论,共获提升!
晏宁 + 1 + 1 我很赞同!
tiankexingli + 1 + 1 我很赞同!
裹紧被子的咩咩 + 1 谢谢@Thanks!
laizihao + 1 + 1 我很赞同!
GXY0713YJ0 + 1 我很赞同!
tony342523 + 1 + 1 谢谢@Thanks!
lovlss + 1 + 1 我很赞同!
这一次抬头微笑 + 1 + 1 谢谢@Thanks!
louchen94 + 1 + 1 我很赞同!
thehird + 1 + 1 谢谢@Thanks!
heiyue003 + 1 + 1 热心回复!
huangqiao + 1 + 1 谢谢@Thanks!
努力的小七 + 1 谢谢@Thanks!
Li125800 + 1 + 1 我很赞同!
misterchen + 1 我很赞同!
luojiarui + 1 + 1 我很赞同!
Zhaofeiyan + 1 + 1 鼓励转贴优秀软件安全工具和文档!
oliveranber + 1 + 1 用心讨论,共获提升!
让开我先跑 + 1 + 1 我很赞同!
zjty123 + 1 + 1 谢谢@Thanks!
rebirthboy + 1 我很赞同!
break995 + 1 + 1 谢谢@Thanks!
easyabc88 + 1 + 1 谢谢@Thanks!
pojianzhilv + 1 + 1 热心回复!
15936635124 + 1 谢谢@Thanks!
gogowanghe + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
hutuo + 1 + 1 热心回复!
timeni + 1 + 1 用心讨论,共获提升!
拣尽寒枝不肯栖 + 1 + 1 反正就是很感谢!
我不是坏人 + 1 + 1 谢谢@Thanks!
YI0IX + 1 + 1 谢谢@Thanks!
jasonlvs + 1 + 1 我很赞同!
shadowming + 1 + 1 我很赞同!
chy311 + 1 我很赞同!
yirenjieqian + 1 + 1 谢谢@Thanks!
i2plus + 1 + 1 谢谢@Thanks!
hbzy + 1 + 1 感谢楼主分享好工具
SurperD + 1 谢谢@Thanks!
af8889 + 1 + 1 这次更新后能够下载了!!!!很好!!
karthusss + 1 + 1 谢谢@Thanks!
ender7er + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
5335446 + 1 + 1 热心回复!
searchlemon + 1 + 1 我很赞同!
depp73 + 1 + 1 谢谢@Thanks!
ablcd + 1 谢谢@Thanks!
LuckyClover + 1 + 1 我很赞同!
q8306925 + 1 + 1 我很赞同!
banch + 1 我很赞同!
jccforever + 1 + 1 谢谢@Thanks!
love008 + 1 + 1 这个版成功下载了,点赞,永久收藏了
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
viaviala + 1 + 1 谢谢@Thanks!
露珠闪闪 + 1 + 1 支持支持
maozheng110 + 1 + 1 我很赞同!
xyz2000cn007 + 1 + 1 热心回复!
gaibang2023 + 1 用心讨论,共获提升!
ekobe1796 + 1 鼓励转贴优秀软件安全工具和文档!
17375707097 + 1 + 1 热心回复!
趣在人间 + 1 + 1 谢谢@Thanks!
yanglinman + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
dookp + 1 + 1 我很赞同!
B1GYang + 1 等有需要的时候试试,感谢大佬

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Pojawa 发表于 2023-12-12 05:21
本帖最后由 Pojawa 于 2023-12-12 06:08 编辑
shu810687117 发表于 2023-12-11 09:02
没注意是在哪里的

重新读了一遍重新改了,很好奇你的代码风格,自己review的时候不累吗…………
// ==UserScript==
// @name         学术下载解析工具-知网-万方-维普
// @namespace    http://tampermonkey.net/
// @version      1.2-e2
// @description
// @author       XiaoM
// @match        *://*.cnki.net/kns8s/*
// @match        *://*.cnki.net/kcms2/*
// @match        *://d.wanfangdata.com.cn/*
// @match        *://lib.cqvip.com/Qikan/Article/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant        unsafeWindow
// @require      https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js
// @require      https://unpkg.com/layui@2.8.18/dist/layui.js
// @connect      xuexi365.top
// @connect      wanfangdata.com.cn
// @grant GM_cookie

// ==/UserScript==

const xuexi365api = "http://www.xuexi365.top/api_zw/RTVC875CY";
const orderidRegex = /order\?id=(.*)/i;
const type2cn = {
    help: "如何使用", download: "帮我下载",
    download_caj: "下载CAJ", download_pdf: "下载PDF",
    download_wf: "下载PDF", download_vp: "下载PDF"
};

(function () {

    /* globals jQuery, $, waitForKeyElements */
    var $ = unsafeWindow.jQuery;

    // this.$ = this.jQuery = jQuery.noConflict(true);

    // @require file://D:\Microsoft VS Code\project\ZW下载\index.js
    {
        let link = document.createElement('link');
        link.rel = "stylesheet"
        link.href = 'https://unpkg.com/layui@2.8.18/dist/css/layui.css';
        document.head.appendChild(link);
    }

    // var script = document.createElement('script');
    // script.src = 'http://www.xuexi365.top/msg.js?'+Date.now();
    // document.head.appendChild(script);

    let help_content = "";
    fetch("http://www.xuexi365.top/msg.json?" + Date.now(), {anonymous: true,}).then(res => res.json()).then(json => {
            help_content = decodeURIComponent(json.updata_content + json.link_content + json.use_content);
            if (json.msg_active) {
                layer.open({
                    type: 1,
                    offset: ['16px', '16px'], // 详细可参考 offset 属性
                    id: 'ID-demo-layer-offset-1', // 防止重复弹出
                    content: '<div style="padding: 16px;">' + json.msg_content + '</div>',
                    area: '240px',
                    title: false,
                    btn: ['确定 [ 8秒后关闭 ]'],
                    time: 8000,
                    anim: 2,
                    //offset:'rb',
                    btnAlign: 'c', // 按钮居中
                    shade: 0, // 不显示遮罩
                    btn1: function () {
                        layer.closeAll();
                    }
                });
            }
        });


    function download(url, data) {
        const loadIndex = layer.msg('正在获取下载地址', {
            icon: 16, shade: 0.11,
            time: 300000, shadeClose: false
        });

        //console.log({dataFilename,dataDbname,orderid})
        const headers = new Headers();
        headers.set("Accept", "application/json, text/javascript, */*; q=0.01");
        headers.set("Content-Type", "application/json; charset=utf-8");
        fetch(url, {
            method: "POST", data: data, anonymous: true, headers: headers,
        }).then(res => res.json()).then(json => {

            try {
                json = JSON.parse(res.responseText);
            } catch (err) {
                console.log(err);
            }

            if (!$.isEmptyObject(json.data.code) && json.data.code > 0) {
                layer.alert(json.data.msg || '下载地址获取成功');
                window.open(json.data.url, "_blank");
            } else {
                layer.alert(json.data.msg || "[0X83889]网络错误,可能接口出现问题,请联系管理源");
            }
            layer.close(loadIndex);

        }).catch(err => {
            layer.close(loadIndex);
            layer.alert('请求异常', err);
        });
    }


    layui.use(function () {
        const util = layui.util;

        let bars = [];

        if (location.href.includes('cnki.net/kns8s')) {
            //查询页面
        }

        if (location.href.includes('cnki.net/kcms2')) {
            //详情页面
            bars = [{ // 定义可显示的 bar 列表信息 -- v2.8.0 新增
                type: 'help',
                style: 'background-color: #ff5722',
                icon: 'layui-icon-app'
            }, {
                type: 'download_caj',

                icon: 'layui-icon-download-circle',
                style: 'background-color: #3594ff;'
            }, {
                type: 'download_pdf',

                icon: 'layui-icon-download-circle',
                style: 'background-color: #5d9e2b;'
            }]
        }

        if (location.href.includes('d.wanfangdata.com.cn')) {
            //万方
            bars = [{ // 定义可显示的 bar 列表信息 -- v2.8.0 新增
                type: 'help',
                icon: 'layui-icon-app',
                style: 'background-color: #ff5722'
            }, {
                type: 'download_wf',
                icon: 'layui-icon-download-circle',
                style: 'background-color: #5d9e2b;'
            }]
        }

        if (location.href.includes('lib.cqvip.com')) {
            //维普
            bars = [{ // 定义可显示的 bar 列表信息 -- v2.8.0 新增
                type: 'help',
                icon: 'layui-icon-app',
                style: 'background-color: #ff5722'
            }, {
                type: 'download_vp',
                icon: 'layui-icon-download-circle',
                style: 'background-color: #5d9e2b;'
            }]
        }


        // 自定义固定条
        util.fixbar({
            bars: bars,
            // bar1: true,
            // bar2: true,
            default: false, // 是否显示默认的 bar 列表 --  v2.8.0 新增
            // bgcolor: '#393D52', // bar 的默认背景色
            css: {bottom: 200},
            // target: '#target-test', // 插入 fixbar 节点的目标元素选择器
            // duration: 300, // top bar 等动画时长(毫秒)
            on: { // 任意事件 --  v2.8.0 新增
                mouseenter: function (type) {
                    layer.tips(type2cn[type], this, {tips: 4, fixed: true});
                },
                mouseleave: ()=> layer.closeAll('tips'),
            },
            // 点击事件
            click: function (type) {
                console.log(this, type);

                if (type === 'help') {
                    layer.open({
                        type: 1,
                        offset: 'l',
                        anim: 'slideRight', // 从左往右
                        // area: ['420px', '240px'], // 宽高
                        area: ['320px', '100%'],
                        shade: 0.1,
                        shadeClose: true,
                        id: 'ID-demo-layer-direction-l',
                        content: help_content
                    });
                }

                if (type === 'download') {

                    if (1 !== $("#selectCount").text()) {
                        layer.tips("请查看这里,是否选定的不是一个", "#selectCount", {
                            tips: [1, '#ff5722'], time: 10000
                        });
                        layer.msg('您没有选择或则选择了多个!');
                        return
                    }

                    const FileNameSNZKPT = localStorage.getItem('FileNameSNZKPT');
                    const input = $('input[value="' + FileNameSNZKPT + '"]').val()
                    if (input !== FileNameSNZKPT) {
                        layer.msg('请查看是否选择的内容不在本页面!');
                        return;
                    }

                    //children('.icon-collect').attr('data-filename')
                    const dataFilename = $('input[value="' + FileNameSNZKPT + '"]').parent("td").parent("tr").find('.icon-collect').attr("data-filename");
                    const dataDbname = $('input[value="' + FileNameSNZKPT + '"]').parent("td").parent("tr").find('.icon-collect').attr("data-dbname");
                    let orderid = $('input[value="' + FileNameSNZKPT + '"]').parent("td").parent("tr").find('.downloadlink').attr("href");

                    let match = orderidRegex.exec(orderid);
                    orderid = match && match[1] || orderid;

                    layer.confirm('这里下载可能是CAJ格式,需要PDF需要进入文章详情页点击按钮,确定要下载码?', {icon: 3}, function () {
                        let data = JSON.stringify({
                            'dataFilename': dataFilename,
                            'dataDbname': dataDbname,
                            'orderId': orderid
                        })
                        download(xuexi365api, data)
                    }, function () {
                        // layer.msg('点击取消的回调');
                    });
                }

                if (type === 'download_caj' || type === 'download_pdf') {

                    const dataFilename = $('#param-filename').val();
                    const dataDbname = $('#param-dbname').val();
                    let orderid = $('#' + type.replace('download_','') + 'Down').attr("href");

                    const match = orderidRegex.exec(orderid);
                    orderid = match && match[1] || orderid;

                    let data = JSON.stringify({
                        'dataFilename': dataFilename,
                        'dataDbname': dataDbname,
                        'orderId': orderid
                    })

                    download(xuexi365api, data)
                }

                if (type === 'download_wf') {
                    //var downloadlink=$('.download .buttonItem').attr("href");
                    const downloadlink = $('.download').attr("href");
                    console.log(downloadlink);

                    fetch(downloadlink, {method: "HEAD", anonymous: true,}).then(res => res.json()).then(json => {
                        const url = json.finalUrl;
                        console.log("url:", url)
                        // 解析URL参数
                        const params = new URL(url);
                        // 获取指定参数的值
                        const paramValue = params.searchParams.get("service");
                        // ??????????????????????????????????
                        console.log('service', paramValue);

                        let queryurl = "http://www.xuexi365.top/api_wf/EDIDN5D5DP"
                        download(queryurl, JSON.stringify({'url': downloadlink}));
                    }).catch(err => {
                        layer.close(loadIndex);
                        layer.alert('请求异常', err);
                    });

                }

                if (type === 'download_vp') {
                    //var downloadlink=$('.download .buttonItem').attr("href");
                    // var downloadlink = $('.download').attr("href");
                    // console.log(downloadlink)

                    // let queryurl = "http://www.xuexi365.top/api_vp/LDIDN0D5DP"
                    // let data = JSON.stringify({ 'id': downloadlink,'info':'' })
                    // download(queryurl, data)
                    const fullText = $('.icon-free').parent('a').attr('onclick')
                    const startIndex = fullText.indexOf("(") + "(".length;
                    const endIndex = fullText.indexOf(")", startIndex);
                    const extractedText = fullText.substring(startIndex, endIndex);
                    const str_arr = extractedText.split(',');
                    const id = str_arr[0].replace(/'/g, "");
                    const info = str_arr[1].replace(/'/g, "");

                    //console.log(id,info)

                    const queryurl = "http://www.xuexi365.top/api_vp/LDIDN0D5DP"
                    download(queryurl, JSON.stringify({id, info}));
                }
            }
        });

        //隐藏知网原本滚动条
        $('.fixedbar').hide();
        $('.anxs-left-bom').hide();
        $('.web-tools').hide();
    });
})();

免费评分

参与人数 4吾爱币 +4 热心值 +4 收起 理由
youranata + 1 + 1 谢谢@Thanks!
cabbc123 + 1 + 1 我很赞同!
Remedia + 1 + 1 用心讨论,共获提升!
loopsn + 1 + 1 谢谢@Thanks!

查看全部评分

longwu1031 发表于 2023-12-10 13:53
 楼主| shu810687117 发表于 2023-12-11 19:04
王雪峰 发表于 2023-12-11 16:54
还是大佬,知网,万方,现在的维普

有用给个好评和推荐哈,更新的动力
拣尽寒枝不肯栖 发表于 2023-12-15 14:33
我这里的情况是,知网和万方没有下载按键;维普还有。已经一试再试,请楼主也排查看看,谢谢了
vethenc 发表于 2023-12-10 13:42
感谢分享,这么优秀还这么努力
 楼主| shu810687117 发表于 2023-12-10 13:42
vethenc 发表于 2023-12-10 13:42
感谢分享,这么优秀还这么努力

感谢感谢
DKBook 发表于 2023-12-10 13:44
厉害啊,大佬!
jinmouyuzhao 发表于 2023-12-10 13:45
厉害啊大佬
pfd8838 发表于 2023-12-10 13:45

感谢分享,这么优秀还这么努力
bigsea 发表于 2023-12-10 13:55
好东东下载看看
shupuyun 发表于 2023-12-10 14:02
谢谢分享!
axtx123 发表于 2023-12-10 14:06
感谢大佬,看一看
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:20

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表