文章自动采集(每天60秒读懂世界,WPCrontrol插件需要先随便创建 )
优采云 发布时间: 2021-12-27 20:17文章自动采集(每天60秒读懂世界,WPCrontrol插件需要先随便创建
)
找了个博客,每天定期发布《每天60秒了解世界》。我发现类似的内容似乎采集
得很好。我采集
了一段时间。效果真的很好。它经常达到分钟级别,但那个博客坏了!!!
以下代码是昨天仔细研究wordpress文章的相关表格和字段后完成的。经过测试,新内容于凌晨1点成功发布!现在免费分享给大家!
代码是你需要支付5福币。在本站注册并登录,即可获得5福币购买。
注意
这段代码会在/wp-content/uploads目录下创建一个名为60s的目录,用于存放图片。
这段代码会自动创建文章分类(每天60秒看世界)并创建标签(每天60秒看世界/每天60秒/60秒/看世界/每天60秒)
如果在创建分类后点击首页的分类,分类下的文章将不会显示,需要在后台编辑并保存分类(无需修改内容)
WP Crontrol插件需要随机创建一个任务,然后在事件类型改为PHP cron event时修改任务添加PHP代码
使用教程
下载WP Crontrol插件,该插件用于发布定时任务,下载链接
2.在任务中加入如下代码,注意插件相关的配置信息
关于API
代码中的API为知乎接口处理,包括标题、内容处理、图片裁剪(原图有水印)等。
了解界面:
global $wpdb;date_default_timezone_set('PRC');$post_tag_arr = array();//先检查文章分类是否存在$term_taxonomy_id = $wpdb->get_row("SELECT tt.term_taxonomy_id from $wpdb->terms t join $wpdb->term_taxonomy tt on t.term_id = tt.term_id where t.name = '每天60秒读懂世界' and tt.taxonomy = 'category' ")->term_taxonomy_id;if(!$term_taxonomy_id){ $wpdb->query("insert into $wpdb->terms (name,slug,term_group)VALUES('每天60秒读懂世界','60s','0')"); $category_id = $wpdb->insert_id; $wpdb->query("insert into $wpdb->term_taxonomy (term_id,taxonomy,description,parent,count)VALUES($category_id,'category','','0','1')"); $term_taxonomy_id = $wpdb->insert_id;}$post_tag_arr[] = $term_taxonomy_id;//检查文章标签是否存在 key=name value=slug$terms_arr = array( "每天60秒读懂世界" => "mt60sddsj", "每天60秒" => "mt60s", "60秒" => "60m", "读懂世界" => "ddsj", "每天六十秒" => "mt60s");foreach ($terms_arr as $key => $value){ $term_taxonomy_id = $wpdb->get_row("SELECT tt.term_taxonomy_id from $wpdb->terms t join $wpdb->term_taxonomy tt on t.term_id = tt.term_id where t.name = '$key' and tt.taxonomy = 'post_tag' ")->term_taxonomy_id; if(!$term_taxonomy_id){ $wpdb->query("insert into $wpdb->terms (name,slug,term_group)VALUES('$key','$value','0')"); $post_tag = $wpdb->insert_id; $wpdb->query("insert into $wpdb->term_taxonomy (term_id,taxonomy,description,parent,count)VALUES($post_tag,'post_tag','','0','1')"); $term_taxonomy_id = $wpdb->insert_id; } $post_tag_arr[] = $term_taxonomy_id;}//解析接口数据$post = json_decode(file_get_contents("http://www.fuym.cn/api/60s.php"),true);//标题$title = $post['title'];//标题存在则不插入$posts = $wpdb->get_row("SELECT id from $wpdb->posts where post_title = '$title' ");if(!$posts){ $FileName = "wp-content/uploads/60s/".strtotime(date("Y-m-d"),time()) . ".png"; //查看图片是否存在 if(!file_exists($FileName)){ $dir = "wp-content/uploads/60s"; if (!file_exists($dir)) { mkdir($dir, 0777, true); } $url = $post['img']; $img = $FileName; file_put_contents($img, file_get_contents($url)); } $url = "//".$_SERVER['SERVER_NAME']."/".$FileName; $newpost = "".$post['content']; $now = current_time( 'mysql' ); $now_gmt = current_time( 'mysql', 1 ); $wpdb->insert( $wpdb->posts, array( 'post_author' => 1, 'post_date' => $now, 'post_date_gmt' => $now_gmt, 'post_content' => $newpost, 'post_title' => $title, 'post_excerpt' => '', 'post_status' => 'publish', 'comment_status' => 'open', 'ping_status' => 'open', 'post_password' => '', 'post_name' => $title, 'to_ping' => '', 'pinged' => '', 'post_modified' => $now, 'post_modified_gmt' => $now_gmt, 'post_content_filtered' => '', 'post_parent' => '0', 'guid' => '',//文章链接 插入后修改 'menu_order' => '0', 'post_type' => 'post', 'post_mime_type' => '', 'comment_count' => '0', ) ); $insertid = $wpdb->insert_id; $post_guid = get_option( 'home' ) . '/?p='.$insertid; $wpdb->query(" UPDATE $wpdb->posts SET guid=$post_guid where id = $insertid "); //插入文章和分类、标签、专题的关系 $sql = " INSERT INTO $wpdb->term_relationships (object_id,term_taxonomy_id,term_order) VALUES "; foreach ($post_tag_arr as $key => $value){ $sql .= "($insertid, $value, '0'),"; } $wpdb->query(rtrim($sql, ","));}
3.完成!通过定时任务,每天凌晨1点自动发布最新的《每天60秒看世界》的文章!您可以单击立即运行立即执行任务,然后检查今天的每日 60 秒是否已添加到您的文章列表中。
发布
演示
原来的api太长了,缩短了一点,api知道了
原创
API:
<p>