大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
不管是服务号还是订阅号,都可以发布和接收消息
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的桑日网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
图文消息只是一种消息类型
我看你的截图好像用的是微信管家
我之前使用的phpquery去抓的微信文章,从搜狗进去的,但是不能太频繁,我是把列表抓下来,存入数据库,然后用计划任务60秒抓一次详情,这里的详情注意里面的html解析,我记得视频地址跟图片解析是要注意下的,
给个简单的例子,仅仅是获取了远程图片哦
?php
$url = '';这是你的微信网址
$con = file_get_contents("$url");
$pattern="/[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?/";
preg_match_all($pattern,$con,$match);
for($i=0;$count($match[1]);$i++){
$pic = file_get_content($match[1][$i]);
$name_arr = explode('/',$pic);
$n = count($name_arr);
file_put_content($name_arr[$n],$pic);
}
没做测试,你测试一下吧
使用fidder抓包工具抓一下数据链接,然后根据链接使用curl进行获取
微信服务器post数据是后台进行的,你直接print并截断是看不到信息的,另外post过来的数据是特殊的xml格式,可以写入日志查看
可以尝试使用DOM操作库simple-html-dom.php,快速获取HTML结构的内容:
?php
require dirname(__FILE__).'/simple_html_dom.php';
$html = file_get_html('');
$articles = array();
foreach($html-find('article.newsentry') as $article) {
$item['time'] = trim($article-find('time', 0)-plaintext);
$item['title'] = trim($article-find('h2.newstitle', 0)-plaintext);
$item['content'] = trim($article-find('div.newscontent', 0)-plaintext);
$articles[] = $item;
}
print_r($articles);
可以把抓取到的内容写入置于内存上的SQLite(/run/shm/php/crawler.db3),避免频繁的磁盘IO.