微信文章抓取

文章抓取 专栏收录该内容
1 篇文章 0 订阅
<?php
class Wxarticle {
	/**
     *
     * 解析文章内容并组织返回参数
     * 
     */
	public function parseArticle($url){
		$con = file_get_contents($url);
		//正则表达式分为标题和内容
		$title_preg = '|<title>(.*)</title>|iUs';
		$content_preg = '|<div class="rich_media_content " id="js_content">(.*)</div>|iUs';
		$img_preg = '|msg_cdn_url = "(.*)";|iUs';
		$soure_preg = '|<span class="rich_media_meta rich_media_meta_text rich_media_meta_nickname">(.*)</span>|iUs';
		preg_match($title_preg,$con,$title_arr);//获取标题
		preg_match($img_preg,$con,$img_arr);//获取缩略图
		preg_match($content_preg,$con,$content_arr);//获取文章主体
		$preg_img="#<img.*src=\"(.*)\".*/>#iUs";
		preg_match_all($preg_img, $content_arr[1],$arr_img);
		// 组织返回参数
		$data = array();
		$data['title']    = str_replace('&nbsp;',' ',$title_arr[1]);
        $data['thumbnail']= $this->qiniu($img_arr[1]) ? $this->qiniu($img_arr[1]) : '';
        $data['content']  = trim($this->getContent($arr_img[1],$content_arr[1]));
    	return $data['title'] && $data['content'] ? $data : array();
	}




	/**
     *
     * 替换文章正文图片并返回正文主体
     * 
     */
	protected function getContent($arr_img,$content){
		foreach ($arr_img as $v){
			$img = $this->qiniu($v);
		    $content = str_replace('data-src="'.$v.'"','src="'.$img.'"',$content);
		}
		return $content;
	}




	/**
     *
     * 七牛图片上传
     * 
     */
	protected function qiniu($url){
        //微信文章图片有防盗链我想大家应该都是知道的,建议将匹配出来的图片传到七牛或者其他云服务
	}
}

点击查看更多

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值