php采集数据正则for,PHP数据采集

php简单正则匹配Img标签src内容采集?

// 抓取网页

金门ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

echo "\n\n抓取网页=======================================\n";

function getHTTPS($url) {

$ch = curl_init ();

curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );

curl_setopt ( $ch, CURLOPT_HEADER, false );

curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, true );

curl_setopt ( $ch, CURLOPT_URL, $url );

curl_setopt ( $ch, CURLOPT_REFERER, $url );

curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, TRUE );

$result = curl_exec ( $ch );

curl_close ( $ch );

return $result;

}

$result = getHTTPS ( "" );

$array = array (

'img',

'script',

'link' 

);

$num = count ( $array );

for($i = 0; $i  $num; ++ $i) {

echo $array [$i] . "--------------------------------\n";

if (preg_match_all ( "/" . $array [$i] . "[^]*/i", $result, $m )) {

for($j = 0; $j  count ( $m [0] ); $j ++) {

echo $m [0] [$j] . "\n";

}

}

}

PHP正则表达式抓取数据

$string_1 = '

tr

td width=15% align=rightb电话:/b/td

td width=85%86666947/td

/tr

tr

td align=right b地址:/b/td

td 春熙路8号/td

/tr

tr

td align=right b人均:/b/td

td span class=f_red_14b14/span元/td

/tr

tr

td align=rightb菜系:/b/td

td快餐/小吃/td

/tr

'

;

preg_match_all ("|td[^]*([^(b)].*)/td|", $string_1, $out, PREG_PATTERN_ORDER);

print_r($out[1]);

---------------------------------------------------------

输出结果为:

Array

(

[0] = 86666947

[1] = 春熙路8号

[2] = 快餐/小吃

)

php正则提取

可用如下的代码来实现:

?php

$str1="|1234|#2354#@2314@

|1314|#2154#@2214@

|1234|#2354#@2314@

|1314|#2154#@2214@";

if(preg_match_all("/\|(\d{4})\|\#(\d{4})\#\@(\d{4})\@/m",$str1, $out, PREG_PATTERN_ORDER))

for($i=0;$icount($out[0]);$i++)

{

echo "{'".$out[1][$i]."','".$out[2][$i]."','".$out[2][$i]."'}br/";

}

?

效果如下所示:

{'1234','2354','2354'}

{'1314','2154','2154'}

{'1234','2354','2354'}

{'1314','2154','2154'}

PHP数据写入MYSQL的问题 我现在通过PHP正则已经循环采集到了两个数据:商品编号(IID):1.2.3直到N和...

确保采集的数据时对称的,可以用下面的方法

$arr_id = array();

$arr_title = array();

$sql= array();

$arr_id[] = explode('.',你采集的id串);

$arr_title[] = explode('.',你采集的title串);

for($i=0,$icount($arr_id),$i++){

$sql[] = "insert into table (id,title) values ($arr_id[$i],'$arr_title[$i]')"

}

请问如何用php中的正则采集指定内容?

简单写的话就是

preg_match("(title.*?.*?title)ims",$b,$a);

$a[0]是你要的

php用正则采集到多个数据如何写入数据库 现在我用php正则采集到了,商品名称title:1,2,3,...n;商品id...

个人建议采集到的数据存储为二维数组,其中商品id是唯一的,所以将id作为键值,然后每个键值对应的是一个一次包含title,price等数据的二维数组,这样采集完成后,可以将这个二维数组遍历循环插入数据库,这样也不容易出现错误

比如其中一个商品id为1,标题为“牙刷”,价格为$2,就这样写入数组$arr[1]=array("牙刷","$2")


分享题目:php采集数据正则for,PHP数据采集
网页网址:http://scyanting.com/article/hsgohp.html