2013-10-04 133 views
-2

我試圖創建一個PHP代碼來從電子商務網站提取物品的價格。我創建了一個變量,我需要輸入項目的URL,代碼將獲取項目的價格,然後顯示它。PHP報廢提取物品的價格

不幸的是,我已經嘗試了20多次,但仍然沒有得到結果。我去找我的教授,他說,他真的很忙,並且會在3天后嘗試找到解決方案。我不想等3天。

任何人都可以幫我嗎?

我一直在試圖抓取的這個item

+0

問題要求代碼必須表現出對問題的理解最小正在解決。包括嘗試解決方案,爲什麼他們沒有工作,以及預期的結果。 – 2013-10-04 04:40:07

+0

顯示您的代碼。 – sectus

+0

想一想:你對我們有什麼期望?你想讓我們告訴你代碼中哪些行沒有正確實現嗎?如果邏輯不正確?好,但你如何指望我們將這些錯誤指出來?如果你不向我們展示你的代碼_?我知道你的教授很匆忙而且很沮喪,但是真的,我們怎麼會有一些幫助?我們需要猜測它還是想念你?或者你是否想要一個現成的工作腳本,以便你拋出(如果存在)? –

回答

1

價格來堆棧溢出之前,你必須嘗試的東西。我希望你不會再犯這個錯誤;)

那麼......我的建議已經夠了。在這裏,我使用cURLPHP上寫了這段代碼。獲取金額。

<?php 
$ch = curl_init('http://www.flipkart.com/lg-g2-16-gb/p/itmdzuhncfhj9zwt?pid=MOBDZUHGWZ3HMCMF&ref=c35ae3ed-99d5-49d8-ae45-b0d4de3afe41'); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$strx=strip_tags(curl_exec($ch)); 
$str_key="Rs. "; 
$end_key=" Inclusive"; 
$strt=strpos($strx,$str_key); 
$end=strpos($strx,$end_key); 

echo intval(substr($strx,$strt+strlen($str_key),9));//outputs 40490 (price of the prod) 
1
public function scrapeProductPrice($remote_page_content,$log){ 
     libxml_use_internal_errors(true); 
     $dom = new DOMDocument(); 
     $dom->loadHTML($remote_page_content); 
     $xpath = new DOMXPath($dom); 
     $my_xpath_query = "//table//tr"; 
     $result_rows = $xpath->query($my_xpath_query); 
     foreach($result_rows as $key => $value) { 
      $lookUp = strstr($value->nodeValue, PRODUCT_NAME) ? str_split($value->nodeValue, strlen(PRODUCT_NAME)) : 0; 
      if($lookUp){ 
       return $lookUp[1]; 
      } 
     } 
    } 

注:更改$ remote_page_content與頁面URL