贝壳获取小区的名称

javascript 复制代码
(async function crawlAll() {
    const allNames = new Set();
    const totalPages = 19; // 已知一共19页
    const baseUrl = window.location.origin + '/xiaoqu/xuanwu/';

    for (let page = 1; page <= totalPages; page++) {
        try {
            // 构建第 N 页的 URL
            const url = page === 1 ? baseUrl : `${baseUrl}pg${page}`;
            
            console.log(`正在抓取第 ${page} 页...`);
            
            // 模拟请求
            const response = await fetch(url);
            if (!response.ok) throw new Error('请求失败');
            
            const text = await response.text();
            const parser = new DOMParser();
            const doc = parser.parseFromString(text, 'text/html');

            // 提取小区名
            const links = doc.querySelectorAll('.xiaoquListItem .title a');
            links.forEach(link => {
                const name = link.title.trim();
                if (name) allNames.add(name);
            });

            // 延时防封
            await new Promise(resolve => setTimeout(resolve, 1000));
            
        } catch (e) {
            console.log(`第 ${page} 页跳过或失败:`, e.message);
        }
    }

    // 一次性输出所有
    const finalList = Array.from(allNames).join('\n');
    console.log('\n🏁 抓取完成!以下是完整列表:\n');
    console.log(finalList); // 一行一个,完整输出
})();

获取单页的小区名称

javascript 复制代码
// 获取所有小区列表项
const items = document.querySelectorAll('.xiaoquListItem');

// 遍历并提取小区名称
const names = [];
items.forEach(item => {
  // 从 title 属性或文本获取小区名
  const name = item.querySelector('.title a').title.trim();
  names.push(name);
});

// 一行一个输出
console.log(names.join('\n'));

// 同时返回结果方便复制
names;
相关推荐
前端 贾公子5 分钟前
第 5 章:Codex 从可运行程序到可交付工具
java·前端·数据库
gz927cool7 分钟前
Python 全栈应用最佳实践完整指南
开发语言·python·ai
CoderYanger26 分钟前
Java EE 进阶:5. Spring IoC&DI(第三弹):Spring DI
java·开发语言·spring boot·spring·面试·java-ee·mvc
用户3600555790028 分钟前
Kestrel_VLLM - 26 · 发射空档三步曲:事件计时 → nsys → 判别实验
前端
AIFQuant31 分钟前
Python期货行情API接入:股指、黄金、原油多品种数据管道实战
开发语言·python·金融·区块链·量化开发
echome88832 分钟前
JavaScript async/await 错误处理:别让 Promise 静默失败
开发语言·前端·javascript·promise
运维行者_35 分钟前
供应链安全成最大风险源,企业如何构建可控的运维体系?
运维·开发语言·网络·数据库·安全·云计算·流量监控
.YM.Z44 分钟前
优选算法——【双指针算法2】C++实现
开发语言·c++·算法
逆向编程1 小时前
MATLAB高级数据结构:cell、struct与table深度应用
开发语言·数据结构·matlab
PedroQue991 小时前
v0.2.0 架构升级:class + reactive 重塑状态管理
前端·uni-app