Greasy Fork

Greasy Fork is available in English.

阿里巴巴国际站产品辅助脚本

1. 添加【零效果产品页】复制及数据查看产品按钮 2. 添加【产品运营工作台页】产品编辑及数据查看按钮 3. 添加【产品分析页】编辑及数据查看按钮 4. 添加【产品详情页】编辑及数据查看按钮,修改图片链接为原图,添加显示产品关键词,添加视频链接与封面链接 5. 添加【图片银行页】直接下载原图按钮,

当前为 2021-08-02 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @namespace  http://www.alibaba.com
// @author     Lepturus
// @version    0.0.2
// @name 阿里巴巴国际站产品辅助脚本
// @icon http://is.alicdn.com/favicon.ico//
// @description  1. 添加【零效果产品页】复制及数据查看产品按钮 2. 添加【产品运营工作台页】产品编辑及数据查看按钮 3. 添加【产品分析页】编辑及数据查看按钮 4. 添加【产品详情页】编辑及数据查看按钮,修改图片链接为原图,添加显示产品关键词,添加视频链接与封面链接 5. 添加【图片银行页】直接下载原图按钮,
// @match *://hz-productposting.alibaba.com/product/product_grow_up_manage.htm*
// @match *://hz-productposting.alibaba.com/product/products_manage.htm*
// @match *://data.alibaba.com/product/ineffective*
// @match *://photobank.alibaba.com/home/index.htm*
// @match *://data.alibaba.com/product/overview*
// @match *://www.alibaba.com/product-detail/*
// @grant GM_addStyle
// ==/UserScript==
 (function () {
     'use strict';
     // 工具函数 -- 添加元素属性
     function setAttributes(el, attrs) {
         for (var key in attrs) {
             el.setAttribute(key, attrs[key]);
         }
     }
     // 添加零效果产品页复制产品按钮
     function productNEW() {
         let products = document.querySelectorAll('tbody>tr')
         let ln = products.length;
         // 非对不起,未能查询到符合您要求的产品,建议重新设置查询条件或者已经存在复制按钮
         if (!document.querySelector('tbody>tr').textContent.match("未能查询到") && !document.querySelector('tbody>tr').textContent
             .match("复制")) {
             for (var i = 0; i < ln; i++) {
                 var product_info = products[i].querySelectorAll('.next-table-cell-wrapper'); // 表格每一行产品
                 // console.log(product_info);
                 var product_url = product_info[1].querySelector("a").href;
                 var product_container = product_info[6].querySelector(".edit-delete-off"); // <span class="edit-delete-off">...
                 var product_id = product_url.match(/_(\d+)\.htm(l)?/)[1]; // http://www.alibaba.com/product-detail//XXX_123456789.html?spm=a2... // 产品ID
                 var product_newURL =
                     "https://post.alibaba.com/product/publish.htm?spm=a2747.manage.0.0.8e9071d2H60Rr7&pubType=similarPost&itemId=" +
                     product_id + "&behavior=copyNew";
                 let product_HTML = document.createElement("span");
                 product_HTML.innerHTML =
                     `<a href="${product_newURL}" target="_blank" behavior="copyToNewProduct"><br/>复制</a>
         <a href="//hz-productposting.alibaba.com/product/manage_products.htm?#/product/all/1-10/productId=${product_id}" target="_blank">数据</a>`;
                 if (!product_container.textContent.match("数据")) { // 动态加载fix
                     product_container.appendChild(product_HTML);
                 }
             }
             console.log("零效果产品页复制按钮添加成功!!!");
         }
     }
     // 添加产品运营工作台产品编辑按钮
     function productEdit() {
         let products = document.querySelectorAll('.upgrade-products-article-item')
         let ln = products.length;
         // 非已经存在编辑按钮
         if (ln && !document.querySelector('.upgrade-products-article-item').textContent.match("编辑")) {
             for (var i = 0; i < ln; i++) {
                 var product_title = products[i].querySelector(".product-subject").title;
                 var product_container = products[i].querySelector(".product-id");
                 var product_id = product_container.textContent.match(/\d+/)[0]; // 产品ID
                 // console.log(product_title, product_id);
                 var product_href =
                     `<a href="//post.alibaba.com/product/publish.htm?spm=a2747.manage.0.0.77fb71d2zK7Jvr&itemId=${product_id}" target="_blank"><br/>编辑</a>
        <a href="//hz-productposting.alibaba.com/product/manage_products.htm?#/product/all/1-10/productId=${product_id}" target="_blank"> 数据</a>`
                 if (!product_container.textContent.match("编辑")) { // 动态加载fix
                     product_container.innerHTML += product_href;
                 }
             }
             console.log("添加产品运营工作台产品编辑按钮成功!!!");
         }
     }
     // 添加产品分析页面按钮
     function productAnalyse() {
         let products = document.querySelectorAll('tbody>tr')
         let ln = products.length;
         // 非已经存在产品分层按钮
         if (ln && !document.querySelector('tbody>tr:last-child').textContent.match("分层")) {
             for (var i = 0; i < ln; i++) {
                 var product_title = products[i].querySelector(".media-content").textContent;
                 var product_url = products[i].querySelector(".custom-td-content>a").href;
                 var product_id = product_url.match(/_(\d+)\.htm(l)?/)[1]; // 产品ID
                 // console.log(product_title, product_id);
                 var product_newURL =
                     "https://post.alibaba.com/product/publish.htm?spm=a2747.manage.0.0.8e9071d2H60Rr7&pubType=similarPost&itemId=" +
                     product_id + "&behavior=copyNew";
                 var product_href =
                     `<br><a class="action-enabled TEST" href="${product_newURL}" target="_blank" behavior="copyToNewProduct">复制</a><br>
        <a class="action-enabled TEST" href="//hz-productposting.alibaba.com/product/manage_products.htm?#/product/all/1-10/productId=${product_id}" target="_blank">分层</a>`;
                 // 非产品不可编辑状态
                 if (products[i].querySelector(".action-enabled")) {
                     var product_container = products[i].querySelector(".action-enabled").parentElement; // 插入span 编辑 ...
                     if (!product_container.textContent.match("分层")) { // fix动态加载js,指选择日期产品后排序会重复添加的
                         product_container.innerHTML += product_href;
                     }
                 }
                 // product_container.parentNode.insertBefore(document.createElement("br"), product_container.nextSibling);
                 // document.querySelector('col:last-child').style.setProperty("width", "180px", "important"); // 设置表格最后一栏宽度
             }
             console.log("添加产品分析页面按钮成功!!!");
         }
     }
     // 添加产品页按钮
     function productDetail() {
         if (!document.querySelector('.detail-title-section').textContent.match("编辑")) {
             var product_title = document.querySelector(".module-pdp-title").textContent;
             var product_id = document.URL.match(/_(\d+)\.htm(l)?/)[1]; // 产品ID
             var product_keywords = document.title.match(/- Buy (.*) Product/)[1]; // 产品关键词
             var product_keywords_html = product_keywords.split(",").map(item => (
                 `<br/><i class="next-icon next-icon-success next-icon-xs" style="margin-right:5px;"></i>${item}`
             )).join("")
             // overwriting the innerHTML is not a good idea indeed, will gone event listener so using appendChild here.
             let product_html = document.createElement("div");
             product_html.innerHTML =
                 `<a href="//post.alibaba.com/product/publish.htm?spm=a2747.manage.0.0.77fb71d2zK7Jvr&itemId=${product_id}" target="_blank"><br/>编辑</a>
        <a href="//hz-productposting.alibaba.com/product/manage_products.htm?#/product/all/1-10/productId=${product_id}" target="_blank"> 数据</a>
        <p style="color:#ff6a00">${product_keywords_html}</p>`
             document.querySelector(".module-pdp-title").parentElement.appendChild(product_html);
             console.log("添加产品分析页面按钮成功!!!");
             document.querySelectorAll(".main-image-thumb-item img").forEach(v => (v.src = v.src.replace(
                 /_50x50\.(jpg|png)/, ""))); // 修改图片轮播链接为原图
         }
         if (document.querySelector('.image-slider video') && document.querySelector(".details-user-actions")) {
             if (!document.querySelector('.details-user-actions').textContent.match("视频")) {
                 var container = document.querySelector(".details-user-actions");
                 var video_link = document.querySelector('video').src; // 产品视频链接
                 var video_poster = document.querySelector('video').poster; // 产品视频封面链接
                 var video_html =
                     `<a href="${video_link}" target="_blank">视频链接 </a><a href="${video_poster}" target="_blank">视频封面</a>`
                 container.innerHTML += video_html;
             }
         }
     }

     // 添加图片银行直接下载原图按钮
     function productPhoto() {
         let products = document.querySelectorAll('.photo-grid-item') // 获取图片容器
         let ln = products.length;
         // 非已存在下载原图链接按钮
         if (!document.querySelector('.image-info').textContent.match("下载原图")) {
             for (var i = 0; i < ln; i++) {
                 let product_src = products[i].querySelector(".photo-grid-img-wrapper img").src; // 获取图片链接
                 let product_picforamt = product_src.match(/_350x350\.(jpg|png)/)[1];
                 let product_picLink = product_src.replace(/_350x350\.(jpg|png)/, "");
                 let product_picName = products[i].querySelector(".display-name button").textContent; // 获取图片文件名
                 let product_picContainer = products[i].querySelector(".image-info");
                 let product_picHTML = document.createElement("a");
                 setAttributes(product_picHTML, {
                     "href": `${product_picLink}?attachment=${product_picName}.${product_picforamt}`,
                     "target": "_blank",
                     "rel": "noopener noreferrer"
                 });
                 product_picHTML.innerHTML = "下载原图";
                 product_picContainer.appendChild(product_picHTML);
             }
             // console.log("添加图片银行直接下载原图按钮成功!");
         }
     }

     if (/product_grow_up_manage/.test(document.URL)) {
         setInterval(productEdit, 2500);
         // 添加产品运营工作台产品编辑按钮
     } else if (/ineffective/.test(document.URL)) {
         setInterval(productNEW, 2500);
         // 添加零效果产品页复制产品按钮
     } else if (/overview/.test(document.URL)) {
         setInterval(productAnalyse, 2500);
         // 添加产品分析页面按钮
     } else if (/product-detail/.test(document.URL)) {
         setInterval(productDetail, 2500);
         // 添加产品详情页按钮
     } else if (/photobank/.test(document.URL)) {
         setInterval(productPhoto, 2500);
         // 添加图片银行直接下载原图按钮
     }
 })();