各位新年快乐 !恭喜发财 !
我用 SNOOPY类 抓网站的数据,把很多的网页合成了一个网页,这个网页里有 很多的table !
现在我只想取《 table with=1200》 的 TABLE的< td> 里的数据 就是 两根 虚线里的TD内容
不要其他table XXX的内容 有 什么办法吗?
网页部分代码 大概是这样
<table width="100">
<tr class="m_title2">
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
</tr>
</table>
............................................
<table width="1200">
<tr class="m_title1">
<td align="center">02-04 09:34:36</td>
<td align="center">888</td>
<td align="center" nowrap>type</td>
<td>news</td>
<td>10000</td>
<td>-10000</td>
<td>0.0</td>
<td>0 / 0.0</td>
<td>50 / 0.0</td>
<td>50 / 0.0</td>
<td>192.168.12.5</td>
</tr>
<tr class="m_title1">
<td align="center">02-05 19:34:36</td>
<td align="center">999</td>
<td align="center" nowrap>type</td>
<td>news</td>
<td>20000</td>
<td>-30000</td>
<td>0.0</td>
<td>0 / 0.0</td>
<td>50 / 0.0</td>
<td>50 / 0.0</td>
<td>102.18.12.56</td>
</tr>
.................................
</table>
<table width="700">
<tr class="m_title2">
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
</tr>
我用 SNOOPY类 抓网站的数据,把很多的网页合成了一个网页,这个网页里有 很多的table !
现在我只想取《 table with=1200》 的 TABLE的< td> 里的数据 就是 两根 虚线里的TD内容
不要其他table XXX的内容 有 什么办法吗?
网页部分代码 大概是这样
<table width="100">
<tr class="m_title2">
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
</tr>
</table>
............................................
<table width="1200">
<tr class="m_title1">
<td align="center">02-04 09:34:36</td>
<td align="center">888</td>
<td align="center" nowrap>type</td>
<td>news</td>
<td>10000</td>
<td>-10000</td>
<td>0.0</td>
<td>0 / 0.0</td>
<td>50 / 0.0</td>
<td>50 / 0.0</td>
<td>192.168.12.5</td>
</tr>
<tr class="m_title1">
<td align="center">02-05 19:34:36</td>
<td align="center">999</td>
<td align="center" nowrap>type</td>
<td>news</td>
<td>20000</td>
<td>-30000</td>
<td>0.0</td>
<td>0 / 0.0</td>
<td>50 / 0.0</td>
<td>50 / 0.0</td>
<td>102.18.12.56</td>
</tr>
.................................
</table>
<table width="700">
<tr class="m_title2">
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
<td>xxx</td>
</tr>
请给我,preg_match_all 代码啊!
preg_match_all('/<table\s+width="1200">(.*?)<\/table>/is',$str,$match)
print_r($match);
非常谢谢 你的帮助,只是我是想要 <td>内容<td> 方便我导入数据库 preg_match_all 可以 <table><td>内容</td></table> 这种写法吗?
02-05 19:34:36 999 type news 20000 -30000 0.0 0 / 0.0 50 / 0.0 50 / 0.0 102.18.12.56
02-05 00:34:36 999 type news 10000 -10000 0.0 0 / 0.0 50 / 0.0 50 / 0.0 192.168.12.56
........
preg_match_all('/<table\s+width="1200">(.*?)<\/table>/is',$str,$match);
//print_r($match[1][0]);
$s = $match[1][0];
preg_match_all('/<td[^>]*>(.*?)<\/td>/is',$s,$match);
print_r($match[1]);
Array
(
[0] => 02-04 09:34:36
[1] => 888
[2] => type
[3] => news
[4] => 10000
[5] => -10000
[6] => 0.0
[7] => 0 / 0.0
[8] => 50 / 0.0
[9] => 50 / 0.0
[10] => 192.168.12.5
[11] => 02-05 19:34:36
[12] => 999
[13] => type
[14] => news
[15] => 20000
[16] => -30000
[17] => 0.0
[18] => 0 / 0.0
[19] => 50 / 0.0
[20] => 50 / 0.0
[21] => 102.18.12.56
)
preg_match_all('/<table\s+width="1200">(.*?)<\/table>/is',$str,$match);
//print_r($match[1][0]);
$s = $match[1][0];
preg_match_all('/<tr[^>]*>(.*?)<\/tr>/is',$s,$match);
foreach($match[1] as $v){
preg_match_all('/<td[^>]*>(.*?)<\/td>/is',$v,$matches);
print_r($matches[1]);
echo "<hr>\n";
}
Array
(
[0] => 02-04 09:34:36
[1] => 888
[2] => type
[3] => news
[4] => 10000
[5] => -10000
[6] => 0.0
[7] => 0 / 0.0
[8] => 50 / 0.0
[9] => 50 / 0.0
[10] => 192.168.12.5
)
<hr>
Array
(
[0] => 02-05 19:34:36
[1] => 999
[2] => type
[3] => news
[4] => 20000
[5] => -30000
[6] => 0.0
[7] => 0 / 0.0
[8] => 50 / 0.0
[9] => 50 / 0.0
[10] => 102.18.12.56
)
<hr>
谢谢 帮助新人 明天 上班的时候就用这些 CODE 谢谢