WPer 采集器APIUSAGE 392
WPer采集器API,是一款简单易用的网页数据采集API接口,免费网页爬虫。适合有一定动手能力的WordPress开发者操作。
参数说明
采集地址:url=https://wper.net/wordpress-functions分页参数:page=/page/
总采集页数:max_page=1 ( 普通用户<=3 )
跳过页数:offset=0
提交分类ID:update_cat=0 ( 本站专用 )
采集列表class:link_class=.excerpt>a ( 支持jq选择器 id的 # 用url编码 %23 )
采集列表a链接前缀:link_before=0
文章内容class:content_class=div.content-entry ( 支持jq选择器 id的 # 用url编码 %23 )
文章内容过滤:filter=0 ( 支持jq选择器,过滤多个用英文逗号“,”分隔 id的 # 用url编码 %23 )
返回数据类型:type=html ( 支持json 和 html )
编码转换:charset=0 ( iconv编码转换,GBK转UTF-8 例:GBK,UTF-8 )
测试:test=1 ( 1返回一篇采集content的html(用于核对content是否正确),0返回采集列表(检测是否正常采集) )
注:
普通用户:json 返回3页<=10篇,html测试返回3页<=30篇;vip用户不做限制,请页脚联系管理员
采集测试
获取使用教程:
<?php // WPer采集器数据的读取,把链接最后面的html改成json就可以,例子如下: $re_t = 'https://wper.net/wper-collector/?url=https://wper.net/wordpress-functions&page=/page/&max_page=1&offset=0&update_cat=1&link_class=.title-entry>a&content_class=div.content-entry&filter=0&type=json'; $re_t =file_get_contents($re_t); $re_t =json_decode($re_t,true); // $re_t['status'] 状态,200=>成功,500=>失败 // $re_t['message'] 状态信息,成功/报错 // $re_t['posts'] 文章数组 // $re_t['posts_number'] 文章总数 if($re_t['status'] == '200'){ foreach ($re_t['posts'] as $p){ echo $p['title']; //echo $p['content']; // 这里就可以做下面的标题重复判断、翻译和提交到自己的网站 } } // 有道翻译api // 有次数限制,自己去申请接口,WPer采集器就不添加翻译功能了 $re_t = 'http://fanyi.youdao.com/translate?&doctype=json&type=auto&i=i love you.'; $re_t =file_get_contents($re_t); $re_t =json_decode($re_t,true); print_r($re_t['translateResult'][0][0]['tgt']); // 我爱你。 // 关于文章标题重复判断,可以把下面的提交放在判断不重复再提交 $results = get_page_by_title($title, OBJECT, 'post'); if($results)echo '重复';else echo '成功'; // 关于提交文章 $postarr = array( //'ID'=> $results->ID, // 可以做更新重复 'post_title' => wp_strip_all_tags( $title ),// 格式标题 'post_content' => $content, 'post_status' => 'publish', 'post_author' => 1, 'post_category' => array( $update_cat ) ); $pid = wp_insert_post( $postarr ); if($pid)echo '成功';else echo '失败'; // 其他采集常用正则过滤,懂的就懂 $content = preg_replace('/<a href=[\",\'](.*?)[\",\']>(.*?)<\/a>/', "\\2", $content); //过滤a标签 $content = preg_replace('/<script.*?<\/script>/','', $content); // 过滤js $content = preg_replace('/<script[\S\s]*?<\/script>/','', $content); // 过滤js $content = preg_replace('/<div class=\"ad.*?<\/div>/','', $content); // 过滤广告等 $content = preg_replace('/<div class=\"ad[\S\s]*?<\/div>/','', $content); // 过滤广告等 ?>