You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

开发Chrome扩展实现JS翻页网站图片批量下载的技术咨询

Chrome扩展开发:获取当前页面图片URL(第一阶段)

针对你需要的图片下载扩展,我来帮你一步步实现第一阶段的核心功能——获取当前页面的图片URL,后续再扩展自动翻页的逻辑:

1. 搭建扩展基础结构

先创建一个扩展文件夹,里面包含这几个核心文件:

  • manifest.json:扩展的配置核心,用来声明权限和脚本规则
  • content.js:注入到目标页面的脚本,负责定位并提取图片URL
  • popup.html(可选):点击扩展图标时弹出的界面,用来展示获取到的URL

2. 配置manifest.json

Chrome扩展需要明确权限才能访问页面内容,这里我们需要activeTab(访问当前激活标签页)和scripting(注入脚本)权限,配置如下:

{
  "manifest_version": 3,
  "name": "图片批量下载助手",
  "version": "1.0",
  "description": "自动获取网站图片,支持JS切换的图片页面",
  "permissions": ["activeTab", "scripting"],
  "action": {
    "default_popup": "popup.html",
    "default_icon": {
      "16": "icon16.png",
      "48": "icon48.png",
      "128": "icon128.png"
    }
  }
}

注:图标可以自己准备,暂时省略的话Chrome会用默认图标代替

3. 编写内容脚本提取图片URL

结合你给出的网站源码结构(<span class="next" id="lel"><img src="http://...">),我们可以直接通过DOM选择器定位目标图片:

创建content.js文件,写入以下代码:

// 获取当前页面的目标图片URL
function getCurrentImageUrl() {
  // 定位id为lel的span标签下的img元素
  const targetImg = document.querySelector('#lel img');
  if (targetImg) {
    const imgUrl = targetImg.src;
    console.log('当前图片URL:', imgUrl);
    return imgUrl;
  } else {
    console.log('未找到目标图片元素');
    return null;
  }
}

// 脚本注入页面后立即执行获取操作
getCurrentImageUrl();

4. 弹窗展示URL(可选)

如果需要在扩展弹窗里直观展示URL,创建popup.html:

<!DOCTYPE html>
<html>
<head>
  <style>
    body { width: 280px; padding: 12px; }
    #urlContainer { word-break: break-all; margin-top: 10px; }
    button { margin-top: 8px; padding: 4px 10px; }
  </style>
</head>
<body>
  <h3>当前图片URL</h3>
  <div id="urlContainer"></div>
  <script src="popup.js"></script>
</body>
</html>

再创建popup.js,实现从内容脚本获取URL并展示的逻辑:

document.addEventListener('DOMContentLoaded', async () => {
  // 获取当前激活的标签页
  const [activeTab] = await chrome.tabs.query({ active: true, currentWindow: true });
  // 注入content.js并执行获取函数
  const result = await chrome.scripting.executeScript({
    target: { tabId: activeTab.id },
    function: getCurrentImageUrl
  });

  const urlContainer = document.getElementById('urlContainer');
  if (result[0].result) {
    urlContainer.textContent = result[0].result;
    // 添加复制按钮
    const copyBtn = document.createElement('button');
    copyBtn.textContent = '复制URL';
    copyBtn.onclick = () => navigator.clipboard.writeText(result[0].result);
    urlContainer.appendChild(document.createElement('br'));
    urlContainer.appendChild(copyBtn);
  } else {
    urlContainer.textContent = '未找到目标图片';
  }
});

后续自动翻页逻辑的思路

等第一阶段功能测试通过后,你可以扩展以下逻辑实现自动循环获取:

  • 模拟点击页面的"下一张"按钮(如果有可见交互元素),或者直接修改URL参数(如果URL有规律)
  • 监听页面加载完成事件,重复执行图片URL获取操作
  • 检查页面是否为404:可以通过判断页面状态码,或者检测页面内的404提示元素来终止循环

测试扩展

  1. 打开Chrome浏览器,进入chrome://extensions/
  2. 开启右上角的"开发者模式"
  3. 点击"加载已解压的扩展程序",选择你的扩展文件夹
  4. 打开目标网站,点击扩展图标,就能看到获取到的图片URL了

内容的提问来源于stack exchange,提问作者math45

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:03:56