Python读取SQLite数据库(将百度坐标转换为84坐标)并写入csv

import sqlite3
import bd_gc_84
import csv
import time

start =time.clock()
print("正在运行..................")

#新建csv文件
file = open('dezhou.csv', 'w', encoding='utf-8', newline="")
csv_writer = csv.writer(file)
csv_writer.writerow(["x","y","count","cityId","date"])

#打开数据库
con = sqlite3.connect("E:\BaiDuMap\hydata.db") 
c = con.cursor()
i = 0

for row in c.execute("select * from heatmapdata where cityId = 372"):
    # if i >= 100000:
    #     break
    # print(row)
    #百度墨卡托转百度经纬度
    bd09mcTobd09ll = bd_gc_84.mercatortobd09(row[0],row[1])
    # print(bd09mcTobd09ll)

    #百度经纬度转国测
    bd09togc = bd_gc_84.bd09togcj02(bd09mcTobd09ll[0],bd09mcTobd09ll[1])
    # print(bd09togc)

    #国测转84
    gcto84 = bd_gc_84.gcj02towgs84(bd09togc[0],bd09togc[1])
    # print(gcto84)

    #写入文件
    csv_writer.writerow([gcto84[0],gcto84[1],row[2],row[3],row[4]])
    
    i = i + 1

    #利用百度接口进行转换
    # url = "https://api.map.baidu.com/geoconv/v1/?coords=" + x + "," + y + "&from=6&to=3&ak=TAnwBKfyivSOa4iqeO6Gw6lRhNF3zKel"
    # print (url)

#关闭文档
file.close()
print("运行结束!")

#关闭数据库
c.close()
con.close()
print("转换数据总量:" + str(i))

end = time.clock()
print("运行时间:" + "%.3f"%(end-start)+"秒")
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王八八。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值