| 程序包 | 说明 |
|---|---|
| com.bytegriffin.get4j |
| 限定符和类型 | 方法和说明 |
|---|---|
static Spider |
Spider.annotation(Class<? extends PageParser> clazz)
annotation入口,如果不想一项一项设置Api,也可以写一个annotation
annotation类:ListDetail(列表-详情页面)、Single(单个页面,不抓取页面上链接)、Cascade(单个页面,包括所有链接)、Site(单个站点)
|
static Spider |
Spider.cascade()
创建针对单页面上(包括所有链接)格式的爬虫
|
Spider |
Spider.cluster(ClusterNode node) |
Spider |
Spider.defaultDownloadDisk()
默认的下载本地路径
默认地址:$path/data/download/${seedname}
|
Spider |
Spider.defaultLucene()
将解析结果索引保存到本系统/data/index目录下
|
Spider |
Spider.defaultProbe()
设置页面变化探测器,用于探测抓取页面的变化,如果有变化就立刻抓取,没有变化则继续探测。
|
Spider |
Spider.defaultProxy()
加载系统自带的http_proxy文件
注意:调用此方法之前请确保conf/http_proxy文件中有可用代理
|
Spider |
Spider.defaultUserAgent()
默认加载系统自带的UserAgent
|
Spider |
Spider.detailSelector(String detailSelector)
抓取的详情页面链接选择器
非必填项,当抓取的页面格式属于【列表-详情】页时使用,支持Jsoup原生的选择器(html内容)或Jsonpath(json内容)。 |
Spider |
Spider.downloadDisk(String disk)
下载本地根路径,默认地址为$path/data/download/
子目录是${seedName},用来表示每个seed对应不同的下载子目录
|
Spider |
Spider.downloadFilenameRule(boolean isContainUrl)
下载文件命名规则,一般为default或url两种类型
url表示文件名中包含url,default表示不包含
|
Spider |
Spider.downloadHdfs(String hdfs)
下载到hdfs路径
|
Spider |
Spider.elementSelectParser(String elementSelector)
单个页面元素解析内部类,设置了此项就不能设置自定义的解析类了
|
Spider |
Spider.email(String... recipient)
当系统发生异常,可将相关信息发送给指定接收人
|
Spider |
Spider.fetchUrl(String fetchUrl)
设置抓取url
必填项。 |
Spider |
Spider.field(String name,
String selector)
设置一个动态字段
|
Spider |
Spider.fields(Map<String,String> fields)
设置多个动态字段
|
Spider |
Spider.ftp(String host,
int port,
String username,
String password)
设置ftp为资源同步方式
|
Spider |
Spider.hbase(String address)
将解析结构保存到hbase数据库中
|
Spider |
Spider.javascriptSupport(boolean ifSupport)
是否支持Javascript,有些网站需要等待javascript来生成结果,此时可以将此属性设为true,
默认值是false,慎用:抓取效率会变慢
|
Spider |
Spider.jdbc(String jdbc)
将解析的结果保存到Mysql中
jdbc格式:jdbc:mysql://localhost:3306/spider? |
static Spider |
Spider.list_detail()
创建针对列表-详情页面格式的爬虫
|
Spider |
Spider.lucene(String indexPath)
将解析结果进行Lucene索引并且保存
子目录是${seedName},用来表示每个seed对应不同的下载子目录
|
Spider |
Spider.mongodb(String mongodburl)
|
Spider |
Spider.parser(Class<? extends PageParser> parser)
自定义页面解析类
|
Spider |
Spider.parser(PageParser parser)
自定义页面解析接口,用于Lambda表达式
|
Spider |
Spider.post()
http请求方法
非必填项。 |
Spider |
Spider.probe(String selector,
int sleepSeconds)
设置页面变化探测器,用于探测抓取页面的变化,如果有变化就立刻抓取,没有变化则继续探测。
|
Spider |
Spider.proxy(String ip,
Integer port)
设置代理
爬虫会自动检测,如果代理不能用,会立刻停止 |
Spider |
Spider.proxys(List<HttpProxy> list)
设置一组代理
爬虫会自动检测,如果代理不能用,会立刻停止 |
Spider |
Spider.resourceSelector(String resourceSelector)
资源选择器,配置时必须要包含在detail_link与avatar资源的外部资源选择器。
|
Spider |
Spider.rsync(String host,
String username,
boolean isModule,
String moduleOrDir)
设置rsync为资源同步方式
注意:暂时不支持windows |
Spider |
Spider.scp(String host,
String username,
String dir,
Integer port)
设置scp为资源同步方式
需要ssh-keygen配置无密码登陆 |
Spider |
Spider.seedName(String seedName)
设置种子名称
每个种子名称要唯一 |
static Spider |
Spider.single()
创建针对单个页面(不抓取页面上的链接)的爬虫
|
static Spider |
Spider.site()
创建针对整站(不包括外链)格式的爬虫
|
Spider |
Spider.sleep(int seconds)
抓取延迟策略
非必填项。 |
Spider |
Spider.sleepRange(int lower,
int upper)
抓取随机延迟策略
非必填项。 |
Spider |
Spider.thread(int count)
爬虫工作线程数量,非必填项。
|
Spider |
Spider.timer(String startTime)
抓取启动器
startTime表示爬虫抓取的开始时间,格式为:2001-10-10 23:29:02,如果startTime已经过时,爬虫会立刻执行 |
Spider |
Spider.timer(String firstTime,
int interval)
抓取启动器
firstTime表示爬虫第一次的抓取时间,格式为:2001-10-10 23:29:02,如果firstTime已经过时,爬虫会立刻执行 interval表示爬虫重复抓取的时间间隔,单位是秒 |
Spider |
Spider.totalPages(int totalPageNum)
抓取的列表总页数
非必填项,当抓取的页面格式属于【列表-详情】页时使用,直接定义抓取页数,默认值是1。 |
Spider |
Spider.totalPages(String totalPageSelector)
抓取的列表总页数
非必填项,当抓取的页面格式属于【列表-详情】页时使用,动态获取页面中显示的总页数。 |
Spider |
Spider.userAgent(String userAgent)
伪造一个UserAgent
|
Spider |
Spider.userAgents(List<String> userAgents)
伪造一个列表的UserAgent
|
Copyright © 2018. All rights reserved.