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

Tampermonkey脚本无法提取目标页面指定表格内容求助

解决Tampermonkey脚本提取目标页面指定表格区域的问题

你的问题出在错误操作了当前页面的DOM,而不是处理拉取到的目标页面HTML内容。现在的代码试图删除当前页面除目标表格外的元素,但拉取到的res.responseText才是「Stations」页面的完整HTML,得先把这个文本转换成可操作的DOM结构,再筛选出你要的#the_table_filter区域。

修正后的代码

// GET 请求,返回文本响应到回调
const httpGetReq = async (targetURL, callback) => {
    GM.xmlHttpRequest({
        method: "GET",
        url: targetURL,
        responseType: "text",
        onload: response => {
            callback(response);
        },
        onerror: response => {
            console.log('GET 请求失败!');
            console.log(response);
        }
    });
};
$("#Find").click(function() {
    httpGetReq(url, res => {
        if (res && res.responseText) {
            // 把拉取到的目标页面HTML转为jQuery可操作的DOM对象
            const targetPageDOM = $(res.responseText);
            // 精准提取目标表格区域
            const targetTable = targetPageDOM.find('#the_table_filter');
            
            // 按需处理提取到的表格:比如替换当前页面内容,或者提取数据
            // 示例:清空当前页面body,插入目标表格
            $('body').empty().append(targetTable);
            
            // 如果你要提取表格里的IP(假设IP在某个特定单元格)
            // const ip = targetTable.find('.ip-column').text();
            // myList.value = ip;
            
            console.log('提取到的表格:', targetTable);
        }
    });
});

关键说明

  • 用$(res.responseText)将目标页面的HTML字符串包装成jQuery对象,这样就能用find()方法直接定位到#the_table_filter,无需打开目标页面
  • 避免直接修改当前页面DOM,先处理拉取到的内容再按需插入,逻辑更清晰
  • Tampermonkey默认注入了jQuery,所以这些方法可以直接使用

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 20:10:33