Pholcus v1.0.0 Release Notes

Release Date: 2016-06-17 // almost 8 years ago
  • 一、输出模块

    0️⃣ 1. 支持规则中设置Spider.NotDefaultField=true来禁止输出系统默认添加的字段 Url、ParentUrl 和 DownloadTime;

    1. 减少mysql的表创建操作;
    2. 修复mysql表名和字段内容在某些情况下会出现乱码的现象; 🐧 4. 修复Linux下,文件创建权限问题;
    3. 修复输出文件的路径以""分割时,目录创建失效的bug;
    4. 修复Output()方法指定ruleName无效的bug;
    5. 直接下载文件时,在日志中打印文件大小。

    二、内存优化

    1. DateCell、FileCell、Context均增加Pool,减少对象创建;
    2. 每2分钟检查一次可重用内存,若大于50M,则手动释放一次内存;
    3. 简化结果数据转储流程,一定程度降低内存消耗。

    三、动态规则

    1. 修复解析多个动态规则时的闭包问题;
    2. 修复动态规则中设置Header无效的bug。

    四、日志模块
    🌲 在配置文件中增加[log]段落参数:

    1. level -> 全局日志打印级别(亦是日志文件输出级别);
    2. consolelevel -> 日志在控制台的显示级别;
    3. feedbacklevel -> 客户端反馈至服务端的日志级别;
    4. lineinfo -> 日志是否打印行信息;
    5. save -> 是否保存所有日志到本地文件。

    五、配置模块

    1. 配置文件中段落与配置项分别按字母排序;
    2. 配置文件中 mysqlmaxallowedpacket -> mysqlmaxallowedpacketmb,单位为MB; 👍 3. mysql增加max_allowed_packet的配置;
    3. 增加conngcsecond配置,支持自主设定mgo连接池GC时间。

    六、操作界面

    1. cmd版的服务端模式支持连续添加任务‘
    2. 修复web版长时间运行,因意外丢失cookie而可能引发panic的问题‘
    3. 修复web版大量日志输出时“send on closed channel“的bug。

    七、其他

    1. 增加对支持gzip的页面进行自动解码的功能; 🆓 2. 修复CrawlPool.Use()与CrawlPool.Free()的写竞争;
    2. 调整运行依赖目录;
    3. 升级surfer下载器。