PHP Simple HTML DOM或者phpQuery可以直接取得某些div中的內(nèi)容,里面有幾個(gè)例子專(zhuān)門(mén)針對(duì)于網(wǎng)頁(yè)抓取,調(diào)整好抓取頻次,舍去已經(jīng)存在的數(shù)據(jù),你可以參考下
成都創(chuàng)新互聯(lián)公司專(zhuān)注于企業(yè)成都全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、上城網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為上城等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
;id=57class=2
頭部加上超時(shí)控制,但對(duì)于很多服務(wù)器無(wú)效,因?yàn)榉?wù)器輸出超時(shí)很多在服務(wù)器控制,所以建議用cmd腳本方式運(yùn)行此程序:
?php
set_time_limit(0); //禁用腳本超時(shí)
//?Create?the?socket?and?connect
$socket?=?socket_create(AF_INET,?SOCK_STREAM,?SOL_TCP);
$connection?=?socket_connect($socket,'116。236。128。220',?14580);
//?Write?some?test?data?to?our?socket
if(!socket_write($socket,?"user?NoCall?pass?-1?vers?test?1.0?filter?b/B*?\r\n"))
{
echo("pWrite?failed/p");
}
if(!file_exists('socket_log.html')){
file_put_contents('socket_log.html',?'script
var?xx?=?setInterval(function(){ //每5秒刷新一次頁(yè)面
window.location.reload();
},?5000);
/script');
}
//?Read?any?response?from?the?socket
while($buffer?=?socket_read($socket,?64,?PHP_NORMAL_READ))
{
echo?json_encode($buffer);?//轉(zhuǎn)換為json數(shù)據(jù)輸出
//記入文件
file_put_contents('socket_log.html',?json_encode($buffer),?FILE_APPEND);
}
echo("pDone?Reading?from?Socket/p");
使用方法:用命令行方式運(yùn)行此腳本
php?script.php
腳本會(huì)一直運(yùn)行到接收數(shù)據(jù)結(jié)束,并持續(xù)將收到的數(shù)據(jù)寫(xiě)入socket_log.html文件。
在瀏覽器打開(kāi)socket_log.html頁(yè)面,此頁(yè)面會(huì)自動(dòng)每5秒刷新一次,來(lái)顯示最新的數(shù)據(jù)。
確保程序有權(quán)限創(chuàng)建及寫(xiě)入socket_log.html文件
在同一個(gè)網(wǎng)絡(luò)上的 其他電腦 都可以登錄這個(gè)網(wǎng)站?就偏偏 你這臺(tái)電腦不行?
登錄的時(shí)候 需要安裝什么 軟件來(lái)登錄 還是 使用普通的瀏覽器 直接……
如果是 后者 那么 瀏覽器 工具 Internet 選項(xiàng) 刪除--- 你徹底清除 瀏覽器 的歷史記錄、緩沖文件、cookie?等………… 然后再試試……
或者 看看 你這臺(tái)電腦的設(shè)置與其他的有什么不同,是否 安裝了 什么優(yōu)化軟件 把不該優(yōu)化掉的東西 禁止了……仔細(xì)查看那些 被優(yōu)化的項(xiàng)目 建議保留的 一定要保留……然后重啟電腦看看 怎樣的情況%
或者 你再換一個(gè) 瀏覽器 試試?。ㄖ匦孪螺d安裝一個(gè) 新的瀏覽器)
你是想抓別人網(wǎng)頁(yè)上ajax動(dòng)態(tài)載入的數(shù)據(jù)吧? 1、要找到它的ajax載入的URL地址 2、利用PHP的file_get_contents($url)函數(shù)讀取那個(gè)url地址。 3、對(duì)抓取到的內(nèi)容進(jìn)行分析或正則過(guò)濾。