首页 > 后端开发 > php教程 > php抓取这个页面的内容

php抓取这个页面的内容

WBOY
发布: 2016-06-23 13:51:38
原创
904 人浏览过


需要抓取的部分已经用红线标出来,
只需要抓取第一页的就可以,
抓取页面:http://www.mafengwo.cn/yj/10206/2-0-1.html
一以前都是用这个类simple_html_dom.php,但是这个我用这个类抓取不出来了


回复讨论(解决方案)

可以用正?提取。

$url = "http://www.mafengwo.cn/yj/10206/2-0-1.html";
$opts = array(
  'http'=>array(
    'timeout'=>10,
    'header'=>"User-Agent: php\r\n" .
              "Cookie: foo=bar\r\n"
  )
);
$context = stream_context_create($opts);
$data = file_get_contents($url,false,$context)

这样可以读取到页面

可以用正?提取。


正则不会啊

没关系,加一个上下文(context)就可以了

include 'simple_html_dom.php';$opts = array(   'http'=>array(     'user_agent' => $_SERVER['HTTP_USER_AGENT']  ) ); $context = stream_context_create($opts); $url = 'http://www.mafengwo.cn/yj/10206/2-0-1.html';$html = file_get_html($url, false, $context);
登录后复制
登录后复制

没关系,加一个上下文(context)就可以了

include 'simple_html_dom.php';$opts = array(   'http'=>array(     'user_agent' => $_SERVER['HTTP_USER_AGENT']  ) ); $context = stream_context_create($opts); $url = 'http://www.mafengwo.cn/yj/10206/2-0-1.html';$html = file_get_html($url, false, $context);
登录后复制
登录后复制



嗯嗯,现在出来了, 输出出来的是上边的内容,但是我区分不出来了,不会用正则把信息分开了

不至于吧?

include 'simple_html_dom.php';$opts = array(   'http'=>array(     'user_agent' => $_SERVER['HTTP_USER_AGENT']  ) ); $context = stream_context_create($opts); $url = 'http://www.mafengwo.cn/yj/10206/2-0-1.html'; $html = file_get_html($url, false, $context);$div = $html->find('div.post-list ul');foreach($div[0]->find('li') as $i=>$item) {  echo $item->find('img')[0]->src, PHP_EOL;  echo trim($item->find('h2')[0]->text()), PHP_EOL;  echo trim($item->find('div')[3]->text()), PHP_EOL;  //echo '**', $item->innertext(), PHP_EOL;}
登录后复制

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板