1. 抓取页面

地址:http://www.meipai.com/medias/hot

public function getContentByFilegetcontents($url) {$content = file_get_contents($url);return $content;}

然后我们会获取到整个页面的代码,接下来就是从代码中提取出视频的地址 标题 图片等关键信息

2.提取

我们发现视频的主要代码集中在以下代码中

<li class="pr no-select loading  J_media_list_item" itemscope itemtype="http://schema.org/VideoObject"><img src="http://mvimg1.meitudata.com/5733fe57ce7aa8996.jpg!thumb320" width="300" height="300" class="db pa pai" alt="手撕包菜。包菜撕片装洗净备用。热锅入油五花肉下锅煸炒出油,多余的油盛出。放酱油肉上色,盛出。之前的油倒锅内,放蒜辣椒炒香,下包菜继续翻炒,倒适量酱油老抽五香粉。再下之前炒好的五花肉翻炒,放适量盐,出锅前放鸡精淋入适量香醋即可非常香啊,超级下饭。喜欢的点赞奥#美食##家常菜#" itemprop="thumbnail"><div id="w517161790" class="content-l-video content-l-media-wrap pr cp" data-id="517161790" data-video="http://mvvideo1.meitudata.com/5734040ae2dec950.mp4"><div class="layer-black pa"></div><a hidefocus href="/media/517161790" target="_blank" class="content-l-p pa" title="手撕包菜。包菜撕片装洗净备用。热锅入油五花肉下锅煸炒出油,多余的油盛出。放酱油肉上色,盛出。之前的油倒锅内,放蒜辣椒炒香,下包菜继续翻炒,倒适量酱油老抽五香粉。再下之前炒好的五花肉翻炒,放适量盐,出锅前放鸡精淋入适量香醋即可非常香啊,超级下饭。喜欢的点赞奥#美食##家常菜#"><meta itemprop="url" content="/media/517161790"><i class="icon icon-item-play"></i><strong class="js-convert-emoji" itemprop="description">哈喇嘎子流成河</strong></a></div><div class="pr" itemscope itemtype="http://schema.org/AggregateRating"><a hidefocus href="/user/62299474" class="dbl h48"><img src="http://mvavatar2.meitudata.com/5731f6b7bbee979.jpg!thumb60" width="28" height="28" class="avatar m10" title="小优Lucky" alt="小优Lucky"></a><p class="content-name  pa"><a hidefocus href="/user/62299474" class="content-name-a js-convert-emoji" title="小优Lucky" itemprop="author">小优Lucky</a></p><div class="content-like pa" data-id="517161790"><i class="icon icon-like"></i><span itemprop="ratingCount">3060</span></div><a hidefocus href="/media/517161790" data-sc="1" target="_blank" class="conten-command pa" data-id="517161790"><i class="icon icon-command"></i><span itemprop="reviewCount">100</span></a></div>
</li>

通过正则匹配

 public function extracturl($page) {$matches = array();$voide=array();$mainurl="";$list=array();$j=0;$pat = "/<li class=\"pr no-select loading  J_media_list_item\".*?>.*?<\/li>/ism";preg_match_all($pat, $page, $matches, PREG_PATTERN_ORDER);for ($i=0; $i <count($matches[0]) ; $i++) { $pat1 ="/data-video=\"(.*?)\"/ism";preg_match_all($pat1, $matches[0][$i], $voide, PREG_PATTERN_ORDER);$myvoide=$voide[1][0];$pat2 ="/src=\"(.*?)\"/ism";preg_match_all($pat2, $matches[0][$i], $img, PREG_PATTERN_ORDER);$myimg=$img[1][0];$pat3 ="/<strong class=\"js-convert-emoji\".*?>(.*?)<\/strong>/ism";preg_match_all($pat3, $matches[0][$i], $title, PREG_PATTERN_ORDER);$mytitle= $title[1][0];$list[$j++]=array('voide'=>$myvoide,'title'=>$mytitle,'img'=>$myimg);}return $list;}
}

全部代码

<?php
class Cutecrawler {public function getContentByFilegetcontents($url) {$content = file_get_contents($url);return $content;}public function extracturl($page) {$matches = array();$voide=array();$mainurl="";$list=array();$j=0;$pat = "/<li class=\"pr no-select loading  J_media_list_item\".*?>.*?<\/li>/ism";preg_match_all($pat, $page, $matches, PREG_PATTERN_ORDER);for ($i=0; $i <count($matches[0]) ; $i++) { $pat1 ="/data-video=\"(.*?)\"/ism";preg_match_all($pat1, $matches[0][$i], $voide, PREG_PATTERN_ORDER);$myvoide=$voide[1][0];$pat2 ="/src=\"(.*?)\"/ism";preg_match_all($pat2, $matches[0][$i], $img, PREG_PATTERN_ORDER);$myimg=$img[1][0];$pat3 ="/<strong class=\"js-convert-emoji\".*?>(.*?)<\/strong>/ism";preg_match_all($pat3, $matches[0][$i], $title, PREG_PATTERN_ORDER);$mytitle= $title[1][0];$list[$j++]=array('voide'=>$myvoide,'title'=>$mytitle,'img'=>$myimg);}return $list;}
}$url = "http://www.meipai.com/medias/hot";$crawler = new Cutecrawler();$content = $crawler->getContentByFilegetcontents($url);$c=$crawler->extracturl($content);var_dump($c);
?>

最后结果:

array(24) {[0]=>array(3) {["voide"]=>string(51) "http://mvvideo2.meitudata.com/5737fd5caeb838981.mp4"["title"]=>string(27) "老师那些年常说的话"["img"]=>string(58) "http://mvimg4.meitudata.com/57384337bd8b59410.jpg!thumb320"}[1]=>array(3) {["voide"]=>string(50) "http://mvvideo2.meitudata.com/5737fceabf873602.mp4"["title"]=>string(21) "女友突然冷落你"["img"]=>string(58) "http://mvimg2.meitudata.com/5736d25d0aa5d8991.jpg!thumb320"}[2]=>array(3) {["voide"]=>string(51) "http://mvvideo2.meitudata.com/5737f300131e18596.mp4"["title"]=>string(27) "女明星之间的内心戏"["img"]=>string(58) "http://mvimg1.meitudata.com/5737059ad66e16795.jpg!thumb320"}[3]=>array(3) {["voide"]=>string(51) "http://mvvideo2.meitudata.com/5737eb9d0bfc92046.mp4"["title"]=>string(24) "真替老师感到悲剧"["img"]=>string(57) "http://mvimg3.meitudata.com/5737ebf503431343.jpg!thumb320"}

接下来。。。你可以存入数据库

转载于:https://blog.51cto.com/updown/1773721

php爬虫实战(抓取美拍视频)相关推荐

  1. Python爬虫实战---抓取图书馆借阅信息

    Python爬虫实战---抓取图书馆借阅信息 原创作品,引用请表明出处:Python爬虫实战---抓取图书馆借阅信息 前段时间在图书馆借了很多书,借得多了就容易忘记每本书的应还日期,老是担心自己会违约 ...

  2. python爬取boss直聘招聘信息_Python爬虫实战-抓取boss直聘招聘信息

    Python Python开发 Python语言 Python爬虫实战-抓取boss直聘招聘信息 实战内容:爬取boss直聘的岗位信息,存储在数据库,最后通过可视化展示出来 PS注意:很多人学Pyth ...

  3. Scrapy 框架抓取美拍视频

    抓取美拍的数据并不算是很难 关键是他的视频url的加密算法是有点难搞. 打开美拍的网址我们查看一下源代码,他的网页加载方式跟其它的网站差不多,video_url也是在源代码中,但是我们仔细看,诺就是下 ...

  4. 【第4篇】Python爬虫实战-抓取B站弹幕视频

    目录 1.获取视频cid参数 2.程序源代码 3.程序运行结果 4.总结 1.获取视频cid参数 首先我们打开一个有弹幕的B站视频,比如:<我好像在哪见过你>人们把难言的爱都埋入土壤里_哔 ...

  5. python爬虫招聘-Python爬虫实战-抓取boss直聘招聘信息

    实战内容:爬取boss直聘的岗位信息,存储在数据库,最后通过可视化展示出来 PS注意:很多人学Python过程中会遇到各种烦恼问题,没有人帮答疑容易放弃.为此小编建了个Python全栈免费答疑.裙 : ...

  6. python爬虫实战-抓取同花顺股票信息

    前言: 在之前介绍requests的基础上,现在开始进行实战. 目标网站:http://q.10jqka.com.cn//index/index/board/all/field/zdf/order/d ...

  7. python爬虫实战-爬取新闻联播视频和新闻文稿

    一.爬取新闻联播视频 1. 将视频拖到最后 2. 分析视频缓存链接 如图所示url:https://hls.cntv.baishancdnx.cn/asp/hls/1200/0303000a/3/de ...

  8. python 爬虫实战 抓取学校bbs相关板块的发帖信息

    1. 前言 之前也因为感兴趣, 写过一个抓取桌面天空里面喜欢的动漫壁纸的爬虫代码.这两天突然看到有人写了这么一篇文章: 爬取京东本周热卖商品基本信息存入MySQL 觉得蛮有趣的, 正好临近找工作的季节 ...

  9. 40行代码教你利用Python网络爬虫批量抓取小视频

    1. 前言 还在为在线看小视频缓存慢发愁吗?还在为想重新回味优秀作品但找不到资源而忧虑吗?莫要慌,让python来帮你解决,40行代码教你爬遍小视频网站,先批量下载后仔细观看,岂不美哉! 2. 整理思 ...

最新文章

  1. 滴滴AI Labs负责人叶杰平离职!CTO 张博接任
  2. CButtonST的用法详解!
  3. C语言递归遍历一棵二叉树(附完整源码)
  4. oracle存储过程写法(一)
  5. c++ 字符串转数字
  6. 最全攻略:数据分析师必备Python编程基础知识
  7. c# txt代码转换成HTML格式
  8. VS2015 包含目录、库目录、附加包含目录、附加库目录、附加依赖项之详解
  9. 湖南计算机专科学院分数线,湖南电子科技职业学院历年录取分数线
  10. h5支付回调返回值是什么 php_微信HTML5网页支付PHP + JS API总结
  11. 微信ipad协议源码
  12. 杜比专为旧版本Android,Android O专用杜比音效miui10已成功
  13. Python入门学习—列表(FishC)
  14. 设置Node.js脚本开机自启动
  15. Windows禁用签名启动
  16. mysql查询excel表_使用SQL语句实现对Excel工作表数据进行查询的方法
  17. 淮阴工学院计算机网络题库,淮阴工学院计算机导论题库.doc
  18. Android 获取手机中微信聊天记录
  19. 一个通证经济典型案例——移动广告矿机
  20. python批量下载数据|工具箱

热门文章

  1. 复权算法详解与代码实现细节解析(tgw)——量化数据中台系列(六)
  2. Android 聊天界面背景图片不顶上去内容顶上去解决方法
  3. Mask RCNN详解
  4. 【Linux】进程概念(下)
  5. 【Bleak】三、扫描(指定设备地址)
  6. Unity 地形编辑器详解(V客学院技术分享)
  7. 成功解决 ModuleNotFoundError: No module named ‘spellchecker‘
  8. 2022深信服Python开发岗面试
  9. Android进阶之路 - 顶部状态栏、底部虚拟导航栏相关操作
  10. CAPP是利用计算机技术,浅谈CAPP 技术在企业的应用