张金坤 8e4409edd6 sufer 9 年之前
..
agent 8e4409edd6 sufer 9 年之前
example 8e4409edd6 sufer 9 年之前
util 8e4409edd6 sufer 9 年之前
README.md 8e4409edd6 sufer 9 年之前
param.go 8e4409edd6 sufer 9 年之前
request.go 8e4409edd6 sufer 9 年之前
surf.go 8e4409edd6 sufer 9 年之前
surfer.go 8e4409edd6 sufer 9 年之前

README.md

surfer GoDoc GitHub release

A high level concurrency downloader.

surfer是一款Go语言编写的高并发爬虫下载器,拥有surf与phantom两种下载内核。

支持固定UserAgent自动保存cookie与随机大量UserAgent禁用cookie两种模式,高度模拟浏览器行为,可实现模拟登录等功能。

高并发爬虫Pholcus的专用下载器。(官方QQ群:Go大数据 42731170,欢迎加入我们的讨论)

Usage

package main

import (
    "github.com/henrylee2cn/surfer"
    "io/ioutil"
    "log"
)

func main() {
    // 默认使用surf内核下载
    resp, err := surfer.Download(&surfer.DefaultRequest{
        Url: "http://github.com/henrylee2cn/surfer",
    })
    if err != nil {
        log.Fatal(err)
    }
    b, err := ioutil.ReadAll(resp.Body)
    log.Println(string(b), err)

    // 指定使用phantomjs内核下载
    resp, err = surfer.Download(&surfer.DefaultRequest{
        Url:          "http://github.com/henrylee2cn",
        DownloaderID: 1,
    })
    if err != nil {
        log.Fatal(err)
    }
    b, err = ioutil.ReadAll(resp.Body)
    log.Println(string(b), err)

    resp.Body.Close()
    surfer.DestroyJsFiles()
}

详情参考:example.go