用php获取网站中的信息,CURL组件测试 php的功能的确很强大,不过后来我改成delphi的了,因为我觉得客户端比较稳定些 不说了,上代码: <?php /***************************************************** 程序名称: curl使用测试 程序说明: 股票页面信息获取 编写时间: 2011年2月12日 编写人员: 童童 修改时间: 修改人员: 童童 备 注: ****************************************************/ $GPNumber = '000877'; $curlPost = 'gpdm=' . urlencode($GPNumber); //初始化 $ch = curl_init(); //设置选项(直接设置或者通过数组设置) //直接设置 //设置你需要抓取的URL curl_setopt($ch, CURLOPT_URL, "http://www.shdjt.com/gpdm.asp"); //通过数组设置 /* $options = array( CURLOPT_URL => 'http://www.baidu.com/', CURLOPT_HEADER => false ); curl_setopt_array($ch, $options); */ // 设置header curl_setopt($ch, CURLOPT_HEADER, 1); // 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //设置使用POST方式 curl_setopt($ch, CURLOPT_POST, 1); //设置POST数据 curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost); //执行并获取HTML文档内容 $str = curl_exec($ch); //转换编码 $str = mb_convert_encoding($str, "utf-8", "gb2312"); //$str = mb_convert_encoding($str, "gb2312", "utf-8"); //ini_set('max_execution_time', '180'); set_time_limit(1800); //处理内容 $str1 = "/<tr[^<]*<td[^<]*>(?<value1>.*?)<//td>[^<]*<td[^<]*>(?<value2>.*?)<//td>[^<]*<td[^<]*>(?<value3>.*?)<//td>[^<]*<td[^<]*>(?<value4>.*?)//<br//>[//s//S]*//<//a//><//td>[^<]*<td[^<]*>(?<value5>.*?)<//td>[^<]*<td[^<]*>(?<value6>.*?)<//td>[^<]*<td[^<]*>(?<value7>.*?)<//td>[^<]*<td[^<]*>(?<value8>.*?)<//td>[^<]*<td[^<]*>(?<value9>.*?)<//td>[^<]*<td[^<]*>(?<value10>.*?)<//td>[^<]*<td[^<]*>(?<value11>.*?)<//td>[^<]*<td[^<]*>(?<value12>.*?)<//td>[^<]*<td[^<]*>(?<value13>.*?)<//td>[^<]*<td[^<]*>(?<value14>.*?)<//td>[^<]*<td[^<]*>(?<value15>.*?)<//td>[^<]*<td[^<]*>(?<value16>.*?)<//td>[^<]*<td[^<]*>(?<value17>.*?)<//td>[^<]*<td[^<]*>(?<value18>.*?)<//td>[^<]*<td[^<]*>(?<value19>.*?)<//td>[^<]*<td[^<]*>(?<value20>.*?)<//td>[^<]*<td[^<]*>(?<value21>.*?)<//td>[^<]*<td[^<]*>(?<value22>.*?)<//td>[^<]*<td[^<]*>(?<value23>.*?)<//td>[^<]*<td[^<]*>(?<value24>.*?)<//td>[^<]*<td[^<]*>(?<value25>.*?)<//td>[^<]*<td[^<]*>(?<value26>.*?)<//td>[^<]*<td[^<]*>(?<value27>.*?)<//td>[^<]*<td[^<]*>(?<value28>.*?)<//td>[^<]*<td[^<]*>(?<value29>.*?)<//td>[^<]*<td[^<]*>(?<value30>.*?)<//td>[^<]*<td[^<]*>(?<value31>.*?)<//td>[^<]*<td[^<]*>(?<value32>.*?)<//td>[^<]*<td[^<]*>(?<value33>.*?)<//td>[^<]*<td[^<]*>(?<value34>.*?)<//td>[^<]*<td[^<]*>(?<value35>.*?)<//td>[^<]*<td[^<]*>(?<value36>.*?)<//td>[^<]*<td[^<]*>(?<value37>.*?)<//td>[^<]*<td[^<]*>(?<value38>.*?)<//td>[^<]*<td[^<]*>(?<value39>.*?)<//td>[^<]*<td[^<]*>(?<value40>.*?)<//td>[^<]*<td[^<]*>(?<value41>.*?)<//td>[^<]*<td[^<]*>(?<value42>.*?)<//td>[^<]*<td[^<]*>(?<value43>.*?)<//td>[^<]*<td[^<]*>(?<value44>.*?)<//td>[^<]*<td[^<]*>(?<value45>.*?)<//td>[^<]*<td[^<]*>(?<value46>.*?)<//td>[^<]*<td[^<]*>(?<value47>.*?)<//td>[^<]*<td[^<]*>(?<value48>.*?)<//td>[^<]*<td[^<]*>(?<value49>.*?)<//td>[^<]*<//tr>/"; $str2 = "<tr bgcolor='#EDEDED' height='20'><td>2011年2月11日</td><td>16:12</td><td>000877</td><td class=tdred>天山股份 <br><a target='_blank' href="http://b.shdjt.com/gaoduan/ddxfs.asp?gpdm=000877" mce_href="http://b.shdjt.com/gaoduan/ddxfs.asp?gpdm=000877">分时ddx</a> <a target='_blank' href="http://qgqp.shdjt.com/gpdm.asp?gpdm=000877" mce_href="http://qgqp.shdjt.com/gpdm.asp?gpdm=000877">点评</a> <a target='_blank' href="http://news.shdjt.com/newsgpdm.asp?gpdm=000877" mce_href="http://news.shdjt.com/newsgpdm.asp?gpdm=000877">新闻</a> <a target='_blank' href="gpdmyd.asp?gpdm=000877" mce_href="gpdmyd.asp?gpdm=000877">异动</a> <a target='_blank' href="http://cwzx.shdjt.com/gpdmgd.asp?gpdm=000877" mce_href="http://cwzx.shdjt.com/gpdmgd.asp?gpdm=000877">股东</a></td><td>33.81</td><td class=tdred>6.42</td><td class=tdred>0.241</td><td>0.287</td><td>16.748</td> <td class=tdbgred>2468</td> <td class=tdred>1251</td> <td class=tdred>1217</td> <td class=tdred>-676</td> <td class=tdred>-1792</td> <td class=tdbgred>8.76</td><td class=tdred>17.28</td><td class=tdred>7.3</td><td>0.414</td><td>0.396</td><td>0.053</td><td>-2.067</td><td>7</td><td>2</td><td class=tdred>3.7</td><td>3.6</td><td>-2.0</td><td class=tdred>-5.3</td><td>107</td><td>1.19</td><td class=tdred>-5401</td><td>131</td><td>7119</td><td>8479</td><td>14.3</td><td>12.0</td><td>-1792</td><td>2468</td><td>6.0</td><td>2.3</td><td>51.1</td><td>47.5</td><td>18.5</td><td>20.5</td><td>24.4</td><td>29.7</td><td>3.30</td><td>1.85</td><td>18.74③</td><td>1.353</td></tr>"; echo preg_match_all($str1,$str,$strs); /* foreach ($strs as $row) { echo mb_convert_encoding($row, "utf-8", "gb2312")."</br>"; } */ /* if ($output === FALSE) { echo "cURL Error: " . curl_error($ch); } */ //var_dump($str); //释放curl句柄 curl_close($ch); ?>