简介

最近测试得物的图片链接,发现速度非常快,大概在10ms左右,速度快的惊人。

若是稳定的话,简直不敢行,要是特别特别特别「 重要的事情说三遍!! 」 稳定,那我的网站不飞起来。

兄弟们,你们的皇帝来了,哈哈哈哈

图片1|249

教程

下面教你如何获取得物图片直链接教程开始:

  • 前提条件
    • 一双灵活的双手
    • 一颗聪明的大脑
    • 一台电脑或者可以装油猴插件的浏览器

选择你需要的图片

准备好图片,打开得物APP,点击我的,点击自己的昵称。这时进入我的资料页面,右下角有一个照相图标。
点击发动态,选择需要的图片。标题名称随便,内容的话选择一些相关话题,主要是提高通过率。

注意:得物是有着很严格的审核的,如果是露乳露胸,低俗,等等之类的图片是不给通过

分享发布的动态

得物发动态需要一定的审核时间,在没有审核通过的之前无法分享,但是注意,最长审核时间为「十分钟
超过则表示可能哪里不合规,需要修改,这方面需要自行摸索~

获取分享链接,使用安装了油猴插件的浏览器打开。链接示例如下:

# 2025年的动态
renjiu648发布了一篇得物动态,https://dw4.co/t/A/1sUjXSuMz点开链接,快来看吧!

# 2021年的动态
奶片化了发布了一篇得物动态,https://dw4.co/t/A/1sUzY8bjR点开链接,快来看吧!

油猴脚本插件辅助

这时候打开油猴插件,选择 「添加新脚本 」全选,删除,将我提供的油猴脚本粘贴进去,Ctrl+S 保存。

返回分享发布的动态页面,可以看到三个红色的按钮,请自行选择您需要的功能。

// ==UserScript==
// @name         得物动态图片提取器
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  提取得物app动态中的图片直连
// @author       You
// @match        https://m.dewu.com/rn-activity/community-share*
// @grant        GM_setClipboard
// @grant        GM_notification
// ==/UserScript==

(function() {
    'use strict';

    // 创建操作按钮组
    function createButtonGroup() {
        // 检查是否已存在,避免重复
        if (document.getElementById('dewu-img-btn-group')) return;
        const group = document.createElement('div');
        group.id = 'dewu-img-btn-group';
        group.style.position = 'fixed';
        group.style.top = '20px';
        group.style.right = '20px';
        group.style.zIndex = '9999';
        group.style.display = 'flex';
        group.style.flexDirection = 'column';
        group.style.gap = '10px';

        // 按钮样式
        function makeBtn(text) {
            const btn = document.createElement('button');
            btn.textContent = text;
            btn.style.padding = '10px 15px';
            btn.style.backgroundColor = '#ff4400';
            btn.style.color = 'white';
            btn.style.border = 'none';
            btn.style.borderRadius = '5px';
            btn.style.cursor = 'pointer';
            btn.style.boxShadow = '0 2px 5px rgba(0,0,0,0.2)';
            btn.style.fontSize = '15px';
            return btn;
        }

        // 抓取图片按钮
        const btnCopy = makeBtn('抓取图片');
        btnCopy.addEventListener('click', () => {
            const urls = extractImageUrls();
            if (urls.length > 0) {
                const md = urls.map((url, idx) => `![图片{idx + 1}]({url})`).join('\n');
                GM_setClipboard(md);
                GM_notification({
                    text: `已复制{urls.length}张图片Markdown到剪贴板!`,
                    title: '得物图片提取器',
                    timeout: 3000
                });
            } else {
                GM_notification({
                    text: '未找到符合条件的图片!',
                    title: '得物图片提取器',
                    timeout: 2000
                });
            }
        });
        group.appendChild(btnCopy);

        // 预览图片按钮
        const btnPreview = makeBtn('预览图片');
        btnPreview.addEventListener('click', () => {
            const urls = extractImageUrls();
            if (urls.length>0) {
                createPreviewPanel(urls);
            } else {
                GM_notification({
                    text: '未找到符合条件的图片!',
                    title: '得物图片提取器',
                    timeout: 2000
                });
            }
        });
        group.appendChild(btnPreview);

        // 预览文本按钮
        const btnText = makeBtn('预览文本');
        btnText.addEventListener('click', () => {
            const urls = extractImageUrls();
            if (urls.length>0) {
                createMarkdownPanel(urls);
            } else {
                GM_notification({
                    text: '未找到符合条件的图片!',
                    title: '得物图片提取器',
                    timeout: 2000
                });
            }
        });
        group.appendChild(btnText);

        document.body.appendChild(group);
    }

    // 提取图片链接(返回去重后的原图链接数组)
    function extractImageUrls() {
        const imgElements = document.querySelectorAll('img');
        const imageUrls = [];
        imgElements.forEach(img => {
            if (img.width>100 && img.height>100) {
                let src = img.src;
                if (src.includes('?')) {
                    src = src.split('?')[0];
                }
                imageUrls.push(src);
            }
        });
        // 去重
        return [...new Set(imageUrls)];
    }

    // 预览Markdown文本面板
    function createMarkdownPanel(urls) {
        let panel = document.getElementById('markdown-preview-panel');
        if (panel) panel.remove();
        panel = document.createElement('div');
        panel.id = 'markdown-preview-panel';
        panel.style.position = 'fixed';
        panel.style.top = '80px';
        panel.style.right = '20px';
        panel.style.width = '400px';
        panel.style.maxHeight = '80vh';
        panel.style.overflowY = 'auto';
        panel.style.backgroundColor = 'white';
        panel.style.zIndex = '9998';
        panel.style.borderRadius = '5px';
        panel.style.boxShadow = '0 4px 15px rgba(0,0,0,0.3)';
        panel.style.resize = 'both';
        panel.style.minHeight = '200px';
        panel.style.minWidth = '200px';
        panel.style.padding = '10px';

        // 标题和关闭
        const header = document.createElement('div');
        header.style.fontWeight = 'bold';
        header.style.marginBottom = '10px';
        header.textContent = 'Markdown文本 (' + urls.length + ')';
        const closeBtn = document.createElement('span');
        closeBtn.textContent = '×';
        closeBtn.style.float = 'right';
        closeBtn.style.cursor = 'pointer';
        closeBtn.style.fontSize = '18px';
        closeBtn.addEventListener('click', () => panel.remove());
        header.appendChild(closeBtn);
        panel.appendChild(header);

        // 文本域
        const textarea = document.createElement('textarea');
        textarea.style.width = '100%';
        textarea.style.height = '300px';
        textarea.style.fontSize = '14px';
        textarea.style.fontFamily = 'monospace';
        textarea.value = urls.map((url, idx) => `![图片{idx + 1}]({url})`).join('\n');
        panel.appendChild(textarea);

        // 一键复制按钮
        const copyBtn = document.createElement('button');
        copyBtn.textContent = '复制全部Markdown';
        copyBtn.style.marginTop = '10px';
        copyBtn.style.backgroundColor = '#ff4400';
        copyBtn.style.color = 'white';
        copyBtn.style.border = 'none';
        copyBtn.style.borderRadius = '5px';
        copyBtn.style.cursor = 'pointer';
        copyBtn.style.padding = '8px 12px';
        copyBtn.addEventListener('click', () => {
            textarea.select();
            document.execCommand('copy');
            GM_notification({
                text: '已复制全部Markdown到剪贴板',
                title: '得物图片提取器',
                timeout: 2000
            });
        });
        panel.appendChild(copyBtn);

        document.body.appendChild(panel);
    }

    // 创建图片预览面板
    function createPreviewPanel(urls) {
        // 检查面板是否已存在
        let panel = document.getElementById('image-preview-panel');
        if (panel) {
            panel.remove();
        }

        // 创建面板
        panel = document.createElement('div');
        panel.id = 'image-preview-panel';
        panel.style.position = 'fixed';
        panel.style.top = '80px';
        panel.style.right = '20px';
        panel.style.width = '400px';
        panel.style.maxHeight = '80vh';
        panel.style.overflowY = 'auto';
        panel.style.backgroundColor = 'white';
        panel.style.zIndex = '9998';
        panel.style.borderRadius = '5px';
        panel.style.boxShadow = '0 4px 15px rgba(0,0,0,0.3)';
        panel.style.resize = 'both';
        panel.style.minHeight = '200px';
        panel.style.minWidth = '200px';
        panel.style.cursor = 'move';

        // 拖动功能
        let isDragging = false, startX, startY, startLeft, startTop;
        panel.addEventListener('mousedown', function(e) {
            if (e.target !== panel) return;
            isDragging = true;
            startX = e.clientX;
            startY = e.clientY;
            startLeft = panel.offsetLeft;
            startTop = panel.offsetTop;
            document.body.style.userSelect = 'none';
        });
        document.addEventListener('mousemove', function(e) {
            if (!isDragging) return;
            panel.style.left = (startLeft + e.clientX - startX) + 'px';
            panel.style.top = (startTop + e.clientY - startY) + 'px';
            panel.style.right = '';
        });
        document.addEventListener('mouseup', function() {
            isDragging = false;
            document.body.style.userSelect = '';
        });

        // 创建面板标题
        const header = document.createElement('div');
        header.style.padding = '10px';
        header.style.backgroundColor = '#f5f5f5';
        header.style.borderBottom = '1px solid #ddd';
        header.style.fontWeight = 'bold';
        header.textContent = '图片预览 (' + urls.length + ')';
        panel.appendChild(header);

        // 添加关闭按钮
        const closeBtn = document.createElement('span');
        closeBtn.textContent = '×';
        closeBtn.style.float = 'right';
        closeBtn.style.cursor = 'pointer';
        closeBtn.style.fontSize = '18px';
        closeBtn.addEventListener('click', () => panel.remove());
        header.appendChild(closeBtn);

        // 添加图片
        urls.forEach((url, idx) => {
            const imgContainer = document.createElement('div');
            imgContainer.style.padding = '10px';
            imgContainer.style.borderBottom = '1px solid #eee';

            const img = document.createElement('img');
            img.src = url;
            img.style.maxWidth = '100%';
            img.style.height = 'auto';
            img.style.display = 'block';
            img.style.marginBottom = '5px';
            img.style.borderRadius = '3px';

            const link = document.createElement('a');
            link.href = url;
            link.textContent = `查看原图/Markdown`;
            link.style.color = '#0066cc';
            link.style.textDecoration = 'none';
            link.style.fontSize = '12px';
            link.target = '_blank';
            link.title = `![图片{idx + 1}]({url})`;
            link.addEventListener('click', function(e) {
                e.preventDefault();
                GM_setClipboard(`![图片{idx + 1}](${url})`);
                GM_notification({
                    text: '已复制该图片Markdown到剪贴板',
                    title: '得物图片提取器',
                    timeout: 2000
                });
                window.open(url, '_blank');
            });

            imgContainer.appendChild(img);
            imgContainer.appendChild(link);
            panel.appendChild(imgContainer);
        });

        document.body.appendChild(panel);
    }

    // 页面加载完成后创建按钮组
    window.addEventListener('load', createButtonGroup);
})();

结语

获取直连之后是可以正常使用markdown语法的,我查看域名发现是阿里云的对象存储,大概率链接不会失效,请各位且用且珍惜,

Li ,各位晚安。
2025年7月8号晚