美团外卖商家数据采集软件,提取电话号手机号评分地址,销量评价内容【autojs版】

简介: 这是一款基于AutoJS开发的美团外卖商家数据采集工具,可自动抓取商家名称、电话、评分、地址、月销量及评价内容等信息。支持多页滚动加载与详细数据采集

下载地址: https://www.pan38.com/share.php?code=pvvmX 提取码:5589

基于AutoJS的美团外卖商家数据采集脚本实现,包含商家信息、评分、地址、销量和评价内容的抓取功能,刚试了一下还能继续采集,因为我开发的时候是上个月,目前对于最新版美团客户端还能正常采集,如果采集不了的话请下载旧版美团客户端绝对就可以了,然后他采集的数据就包括上面那些信息,当然还有其他的我这边就没办法一个个给你打出来,仅供学习。

核心代码:

// 美团外卖商家数据采集工具 - AutoJS版
// 功能:自动采集商家信息、电话、评分、地址、销量和评价内容

"ui";
ui.layout(





);

// 全局变量
let isRunning = false;
let collectedData = [];
const MAX_PAGES = 5; // 最大采集页数

// 主采集函数
function mainCrawler() {
if (!requestScreenCapture()) {
log("请求截图权限失败");
return;
}

launchApp("美团外卖");
sleep(3000);

// 处理可能的弹窗
handlePopup();

// 执行搜索
performSearch();

// 采集商家列表
collectShopList();

// 保存数据
saveData();

}

// 处理弹窗
function handlePopup() {
// 关闭青少年模式弹窗
if (text("我知道了").exists()) {
text("我知道了").click();
sleep(1000);
}

// 关闭位置授权弹窗
if (text("允许").exists()) {
    text("允许").click();
    sleep(1000);
}

}

// 执行搜索
function performSearch() {
let keyword = ui.keyword.getText();
let location = ui.location.getText();

// 点击搜索框
let searchBox = id("com.sankuai.meituan.takeoutnew:id/search_edit").findOne(3000);
if (searchBox) {
    searchBox.click();
    sleep(1000);

    // 输入关键词
    setText(0, keyword);
    sleep(1000);

    // 点击搜索按钮
    let searchBtn = text("搜索").findOne(3000);
    if (searchBtn) {
        searchBtn.click();
        sleep(3000);
    }
}

}

// 采集商家列表
function collectShopList() {
for (let page = 0; page < MAX_PAGES && isRunning; page++) {
log("正在采集第 " + (page + 1) + " 页商家...");

    // 滑动到底部加载更多
    scrollDown();
    sleep(3000);

    // 获取当前页商家元素
    let shops = className("android.view.View").depth(15).find();
    if (shops.empty()) {
        log("未找到商家列表");
        break;
    }

    // 遍历商家
    for (let i = 0; i < shops.length && isRunning; i++) {
        let shop = shops[i];
        let bounds = shop.bounds();

        // 点击进入商家详情
        click(bounds.centerX(), bounds.centerY());
        sleep(3000);

        // 采集商家详情
        let shopData = collectShopDetail();
        if (shopData) {
            collectedData.push(shopData);
            log("成功采集: " + shopData.name);
        }

        // 返回列表
        back();
        sleep(2000);
    }

    // 滑动到下一页
    swipe(device.width / 2, device.height * 0.8, 
          device.width / 2, device.height * 0.2, 500);
    sleep(3000);
}

}

// 采集商家详情
function collectShopDetail() {
let shopData = {
name: "",
phone: "",
score: "",
address: "",
monthlySales: "",
reviews: []
};

// 获取商家名称
let nameElem = id("com.sankuai.meituan.takeoutnew:id/shop_name").findOne(3000);
if (nameElem) shopData.name = nameElem.text();

// 获取评分
let scoreElem = id("com.sankuai.meituan.takeoutnew:id/score").findOne(3000);
if (scoreElem) shopData.score = scoreElem.text();

// 获取月售
let salesElem = id("com.sankuai.meituan.takeoutnew:id/month_sale_num").findOne(3000);
if (salesElem) shopData.monthlySales = salesElem.text();

// 点击查看商家信息
let infoBtn = textContains("商家信息").findOne(3000);
if (infoBtn) {
    infoBtn.click();
    sleep(2000);

    // 获取地址
    let addressElem = textMatches(/地址[::].+/).findOne(3000);
    if (addressElem) shopData.address = addressElem.text().replace(/地址[::]/, "").trim();

    // 获取电话
    let phoneElem = textMatches(/(\d{3}-\d{8}|\d{4}-\d{7}|\d{11})/).findOne(3000);
    if (phoneElem) shopData.phone = phoneElem.text();

    // 返回详情页
    back();
    sleep(2000);
}

// 采集评价
collectReviews(shopData);

return shopData;

}

// 采集评价内容
function collectReviews(shopData) {
// 点击评价标签
let reviewTab = textContains("评价").findOne(3000);
if (reviewTab) {
reviewTab.click();
sleep(3000);

    // 滑动加载更多评价
    for (let i = 0; i < 3; i++) {
        scrollDown();
        sleep(2000);
    }

    // 获取评价元素
    let reviewItems = className("android.view.View").depth(18).find();
    for (let i = 0; i < reviewItems.length; i++) {
        let review = {
            user: "",
            rating: "",
            content: "",
            time

// 数据采集核心功能
function collectShopDetail() {
let shopData = {
name: getShopName(),
phone: getPhoneNumber(),
score: getShopScore(),
address: getShopAddress(),
monthlySales: getMonthlySales(),
reviews: collectReviews()
};
return shopData;
}

function getShopName() {
let elem = id("com.sankuai.meituan.takeoutnew:id/shop_name").findOne(3000);
return elem ? elem.text() : "未知商家";
}

function getPhoneNumber() {
clickShopInfo();
let phone = textMatches(/(\d{3}-\d{8}|\d{4}-\d{7}|\d{11})/).findOne(3000);
back();
return phone ? phone.text() : "未获取";
}

滚动加载实现
function loadMoreReviews() {
let lastPos = 0;
while (true) {
let currentPos = getScrollY();
if (currentPos === lastPos) break;
lastPos = currentPos;
scrollDown();
sleep(2000);
}
}

function getScrollY() {
return className("android.widget.ScrollView").findOne().bounds().top;
}

function scrollDown() {
swipe(device.width/2, device.height0.8,
device.width/2, device.height
0.2, 500);
}

相关文章
|
20天前
|
并行计算 计算机视觉 流计算
照片生成眨眼张嘴的视频软件,制作眨眼睛张嘴图软件,手机制作人脸眨眼张嘴
这是一套基于Python的人脸动画生成系统,功能完整且模块化设计。项目利用dlib与face-alignment库实现精准人脸关键点检测,结合Delaunay三角剖分技术完成图像变形
|
20天前
|
API 定位技术 Python
高德商家手机电话号码采集工具,可采集地址坐标手机号码提取软件
这是一套基于高德地图API的商家信息采集解决方案,提供核心代码与功能实现。通过高德Place API,合法合规地批量采集商家基础信息
|
19天前
|
算法 Python
让照片眨眼张嘴的软件免费,照片摇头眨眼张嘴动图,手机制作人脸眨眼张嘴
本项目提供手机端从代码到开发的完整实现路径,包含人脸关键点检测与动画生成。结合先进算法如First Order Motion Model可进一步优化效果,相关开源项目可在GitHub获取。
|
20天前
|
存储 数据采集 文字识别
美团商家电话采集工具,可提取美团商户联系方式、地址、手机号、评分【autojs脚本版】
这是一款基于安卓无障碍服务的美团商家数据采集工具,包含主流程控制、页面解析、电话提取和工具函数四大模块。通过控件层级定位与OCR技术实现数据抓取,支持自动翻页及异常处理,最终以CSV格式存储结果。
|
20天前
|
存储 定位技术
美团商家提取脚本,可采集商家地址评分电话手机号,autojs版仅供学习
本项目基于Auto.js实现美团商家数据的自动化采集,主要功能包括页面解析、数据提取与存储。通过控件层级定位技术深度遍历获取商家信息(名称、评分、地址、电话等)
|
20天前
|
数据采集 JSON 数据可视化
高德地图百度腾讯谷歌采集工具,可提取名称 地址 电话 手机号,精准autojs版下载
这是一款基于Auto.js开发的地图商家信息采集工具,支持高德、百度、腾讯和谷歌四大地图平台的数据抓取。可提取商家名称、地址、电话等关键信息
|
网络协议 Android开发 数据安全/隐私保护
Android手机上使用Socks5全局代理-教程+软件
Android手机上使用Socks5全局代理-教程+软件
7413 2
|
监控 安全 Android开发
【新手必读】Airtest测试Android手机常见的设置问题
【新手必读】Airtest测试Android手机常见的设置问题
354 0
|
Web App开发 前端开发 网络安全
前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
【2月更文挑战第21天】前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
198 1
前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
|
存储 数据库 Android开发
Android实现手机内存存储功能
Android实现手机内存存储功能
126 2

热门文章

最新文章