我運行一個小型網站來處理電腦遊戲,並且希望從toysrus.ie網站獲取一些產品信息,現在的問題是網站看起來是使用一些神祕的發佈格式來加載頁面,它有一個時間戳,我不能在PHP中複製URL中的URL,並且它也使用服務器端cookie。PHP:颳去使用時間戳和可能的服務器端cookies的網站
現在我已經嘗試使用PHP來獲取有問題的頁面加載下面,但只是返回一個。
$url = 'http://www.toysrus.ie/FilterSearchByManufacturer.action?manuId=1668&t=1453585863738';
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->loadHTML(file_get_contents($url), LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
我上面通過進入網站,點擊「視頻遊戲」頂級菜單項,然後一旦頁面加載,左側向下滾動下拉框,然後選擇「任天堂得到了$url
'這給了我的網址http://www.toysrus.ie/FilterSearchByManufacturer.action?manuId=1668&t=1453585863738
。
對於t=1453585863738
部分,我嘗試使用PHP的time()
函數,但沒有運氣,會話在幾秒鐘後仍然超時。即使它確實有效,並且由於t
變量問題,我也無法進入下一個產品頁面。
$url = sprintf('http://www.toysrus.ie/FilterSearchByManufacturer.action?manuId=1668&t=%s', time());
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->loadHTML(file_get_contents($url), LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
現在,如果有更多的則列出的結果的一個頁面,則同樣的問題出現與t
不是一樣time()
和會話超時。
t
看起來是13個字符長,而time()
只返回10個字符。
@ Don'tPanic,謝謝你,這很可能,但我的問題不是爲什麼我不能這樣做,它是要求幫助,看看我是否能夠完成我想要做的事情,正如我所說,這是一個爲本地遊戲集團運營的小型網站,沒有任何大規模或大規模的活動,我可以在沒有它的情況下生活,但如果需要的話。 – llanato