前阵子接到一个实验室老师的需求,采集五年前(2024-5=2019)过年前后的北京微博签到数据。
前两年采集的深圳签到数据是 2022 年是当年的尚可,这次虽然时间跨度只有两个月,但是由于时间太过久远,但是颇费了一番心力,还好最终老师只需要每个月 10000 条左右,我赶紧停止了集群的采集,一看代理池马上欠费了。
最终采集的数据字段包括经纬度、签到地点、微博链接、博主链接、内容、图片链接、发布时间、转评赞数等数十个字段,基本满足分析要求。
经纬度坐标应该不是 WGS84,验证应该是 GCJ-02 坐标系,GCJ-02 整体相对于 GPS 坐标系应该有非常小的非线性偏移。 GCJ-02 可以转化成 WGS84 坐标系(相关转化的算法网上有很多了,这里就不再赘述了,可自行搜索)。
这里插一句,如果要使用地理编码相关的 API,最好使用高德地图,因为其实微博(以前是)和高德地图都是阿里系的公司,高德地图偏爱 GCJ02,微博就使用的高德地图相关的。
微博签到数据的采集,时间越久越难采集,看到网上有很多分享 2014 年全国微博签到数据的,我看了下其实那个只是 poi 数据,而且绝大部分的 poi 被重置了,poi 链接打不开,查无此微博。
这里插播一句,借用了朋友的服务器集群,可以采集大量历史微博签到数据,时间段可以是 2016、2017、2018、2019、2020、2021、2022等,最好是 2018 年以后的,因为历史微博签到数据回溯采集非常困难,爬大量数据(对于 2018 2019 年左右,几千条每月就是大量了)需要大量账号和大量代理 ip,固定成本和时间都消耗不少,所以按需采集,可以采集最近 10 年北京、上海、广州、深圳、苏州、杭州等全国任意城市,或者新加坡、巴黎等海外任意城市的签到微博数据,或者任意景点(景点可能是一个或者多个 poi)的微博签到数据,如果有需求,可以带上具体任务+时间段来戳,有空(比较大的任务最好是假期)就做,非咸鱼非倒卖,一手实时采集,有一定成本,相互理解。