采集

采集有两种方式访问

1、file_get_contents()

2、curl_init()

一、file_get_contents()

1、使用file_get_contents()抓到你网页的内容,当访问搜狐的时候回出现乱码,解决办法是在file_get_contents("compress.zlib://".地址名)

会出现乱码的原因是因为从浏览器上访问搜索的时候,页面受到的是一堆压缩的数据, 使用compress.zlib:// 可以实现乱码

例如:

  1. $url = "http://www.sohu.com/";  
  2. echo file_get_contents('compress.zlib://'.$url); 

2、获取页面里面的内容

使用正则规则:

例如:

1.获取title标签的内容:

$preg="#<title>(.*)</title>#isU";
preg_match_all( $preg,$con,$result);//php正则表达式
print_r($result);exit;

2.使用.*的意思是:获取标签里面全部的内容

3.使用i,s,u的意思分别是:

i是将正则表达式取消大小写的敏感性

s 模式中的圆点元字符(.)匹配所有的字符,包括换行符

U (PCRE_UNGREEDY) 本修正符反转了匹配数量的值使其不是默认的重复,

二、curl


使用curl之前,必须在配置文件中开启curl扩展

然后就可直接使用了。

代码如下:

<?php
$url="http://www.baidu.com/";
$ch = curl_init();  //1.初始化
curl_setopt($ch, CURLOPT_URL, $url); //2.请求地址
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");//3.请求方式,请求方式默认是get
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec($ch);//6.执行
if (curl_errno($ch)) {//7.如果出错
    return curl_error($ch);
}
curl_close($ch);//8.关闭
var_dump($tmpInfo);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值