标签:
原文地址:http://blog.chinaunix.net/uid-22414998-id-3695673.html
续前文:《数据抓取的艺术(一):Selenium+Phantomjs数据抓取环境配置》。
程序优化:第一步
开始:
每个耗时约27秒。
修改后:
这回只分析了3个,共52秒,每个耗时约17秒,只是因为避免了重复PhantomJS的开启、运行和关闭这一过程。
程序优化:第二步
减少对角线重复请求次数:
和上面的待分析的个数一样,花费21秒,每个耗时约7秒。如果开启excel存储,则共花费25秒,每个耗时约8秒。
程序优化:第三步
减少写入Excel的次数,提高硬盘性能。当然,数据量越大,次数越多,效果越明显。这次把Excel一直打开,每隔20个保存一次。
结果如下:
相当于每次握手,花费2秒。但这还存在一个致命伤,那就是在随着数据量的激增,以后经常要保存上万个值,每次都保存,那么次数越多写入量就会越大。只是希望微软的Excel已经能够知道:哪些是未改动数据就不必再次写入,哪些数据改动过需要写入。
程序优化:第四步
使用多线程+使用数据库。如果不用数据库,就靠读写一个单机版的Excel,效率太低,因此我考虑用Mysql或Sqlite。最后再将结果转出来。
标签:
原文地址:http://www.cnblogs.com/liinux/p/5494190.html