Python 从Maxcompute导出海量数据到文本文件(txt)或Excel

由于直接从Maxcompute导出数据有条数限制,最多只能导出一万条,如果数据量太大,则不能直接从页面上导出。可以通过以下脚本把数据导出到文本文件或者Excel.

导出到文本文件脚本如下:

python 复制代码
# coding=utf-8
import datetime
from odps import ODPS
import time

odps = ODPS('access_key', 'access_secret', 'namespace',
            endpoint='http://service.cn-hangzhou.maxcompute.aliyun.com/api')
sql = "SELECT DISTINCT mobile FROM xxxx.sms  WHERE pt>='20250107' AND pt<='20250631';"

save_path = "/Users/xxxx/Desktop/mobiles.txt"

with open(save_path, 'w', encoding='utf-8') as f:  # 使用UTF-8编码打开文件
    # 写入表头(可选)
    # f.write("Mobile\n")
    
    with odps.execute_sql(sql).open_reader() as reader:
        for data in reader:
            # 使用制表符分隔数据,并用换行符分隔记录
            line = f"{data['mobile']}\n"
            f.write(line)

exit(0)

导出到Excel脚本如下:

python 复制代码
# coding=utf-8
import datetime
from odps import ODPS
import time
import xlwt
import openpyxl

odps = ODPS('access_key', 'access_secret', 'namespace',
            endpoint='http://service.cn-hangzhou.maxcompute.aliyun.com/api')
sql = " SELECT mobile, FROM xxx.sms WHERE pt>='20250801' AND pt<='20250804' ;"


outwb = openpyxl.Workbook()  # 打开一个将写的文件
outws = outwb.create_sheet(index=0)  # 在将写的文件创建sheet

i = 1
with odps.execute_sql(sql).open_reader() as reader:
    for data in reader:
        print(data)
        outws.cell(i, 1).value = data['mobile']
        i += 1
saveExcel = "/Users/xxx/Desktop/mobiles.xlsx"
outwb.save(saveExcel)  # 一定要记得保存

exit(1)
相关推荐
代码山河3 小时前
Python就业方向全解析:后端、爬虫、数据分析、AI你选哪个?
python·学习·架构·教程·面向对象·项目
在世修行3 小时前
智学文枢:题目流水线
python·多线程·状态机·pyside
梯度下降者4 小时前
零基础入门Python 爬虫
爬虫·python·数据分析·入门指南·webcrawler
“AI国潮设计-小江”6 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
benchmark_cc7 小时前
用 Python 拉 A 股全市场实时快照:Notebook 请求、结果校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
伞伞悦读7 小时前
【第70期】Adam二阶矩不是方差:偏差校正、动量与AdamW完整实验
python
外收内放7 小时前
Python基础语法练习题(73)
java·前端·python
锋行天下8 小时前
Langgraph HITL 中断运行,用户输入后输出打字效果
人工智能·python
时早玖沐8 小时前
给 AstrBot 写一个天气推送插件:12 次提交、6 个坑
python·开源·ai编程
触底反弹8 小时前
🚀 FastAPI 五大重难点深度剖析:从 500 报错到彻底搞懂 Depends、Pydantic 与 SQLAlchemy
python·fastapi