有一个Python 写的三四百行的爬虫。bs4解析,sqlite存储,还用flask提供了 http 服务。
整个程序运行效率非常烂,一跑起来狗云168 ks cpu直接吃满 100%。重写是不可能重写的,一来要花很多时间写,花很多时间调,二来从来没用Go写过类似的东西。
昨天让 GPT4 帮忙写成 Go,95%的代码GPT4写,人工解决 5% 的一些和之前 Python 代码的差异。一小时重写完毕,上线,和原数据库完全兼容,CPU 占用直接下降到 8%, 而且速度还飞快,为了不让爬太快被封人工加了 Time.Sleep。
虽然要人工解决5%的问题,但是大部分问题都不是细节问题,比如数据库里面有些字段是空的,Go结构应该用指针而不是值,诸如此类对人脑几乎没有负担的问题。不会因为SQL里面一个符号打错了导致debug一小时。并且这些问题,只需要向GPT指出,他就会自己改,不需要手动一行一行改代码。
人不擅长处理细节的问题,GPT恰恰很擅长。