好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > php爬取天貓和淘寶商品數據

php爬取天貓和淘寶商品數據

熱門標簽:400電話辦理福州市 江蘇外呼電銷機器人報價 深圳外呼系統收費 長沙crm外呼系統業務 電話機器人危險嗎 400電話申請方法收費 南寧高頻外呼回撥系統哪家好 專業電話機器人批發商 離石地圖標注

一、思路

最近做了一個網站用到了從網址爬取天貓和淘寶的商品信息,首先看了下手機端的網頁發現用的react,不太了解沒法搞,所以就考慮從PC入口爬取數據,但是當爬取URL獲取數據時并沒有獲取價格,庫存等的信息,仔細研究了下發現是異步請求了另一個接口,但是接口要使用refer才能獲取數據,于是就通過以下方式寫了一個簡單的爬蟲,用于爬取商品預覽圖和商品的第一個分類的價格、庫存等。

二、實現

代碼如下:

function crawlUrl($url){
import('PhpQuery.Curl');
 $curl=new \Curl();
 $result = $curl->read($url);
 $content = mb_convert_encoding( $result['content'], 'UTF-8', 'UTF-8,GBK,GB2312,BIG5' );
 $myres=array();
 if(strrpos($url,'taobao.com')!=false) {
  //匹配是否下架
  if(strpos($content,'此寶貝已下架')!==false){
   return false;
  }
  preg_match("|itemId   : '(.*)'|isU", $content, $match);
  $item_id=$match[1];
  preg_match("|sellerId   : '(.*)'|isU", $content, $match);
  $sellet_id=$match[1];
  preg_match("|title>(.*)/title>|isU",$content,$match);
  $title=$match[1];
  //價格庫存信息
  $ch = curl_init();
  curl_setopt ($ch, CURLOPT_URL, 'https://detailskip.taobao.com/service/getData/1/p1/item/detail/sib.htm?itemId='.$item_id.'sellerId='.$sellet_id.'modules=dynStock,qrcode,viewer,price,duty,xmpPromotion,delivery,upp,activity,fqg,zjys,amountRestriction,couponActivity,soldQuantity,originalPrice,tradeContractcallback=onSibRequestSuccess');
  $opt[CURLOPT_HEADER]=false;
  $opt[CURLOPT_CONNECTTIMEOUT]=15;
  $opt[CURLOPT_TIMEOUT]=300;
  $opt[CURLOPT_AUTOREFERER]=true;
  $opt[CURLOPT_USERAGENT]='Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11';
  curl_setopt_array($ch,$opt);
  curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt ($ch,CURLOPT_REFERER,$url);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  $out_put=curl_exec ($ch);
  curl_close ($ch);
  $res=str_replace('onSibRequestSuccess(',"",$out_put);
  $res=rtrim($res,');1');
  $result=json_decode($res,true);
  //查詢出圖片信息
  preg_match('|ul id="J_UlThumb" class="tb-thumb tb-clearfix">(.*)/ul>|isU', $content, $match);
  preg_match_all('/img data-src="(.*?)" \//', $match[1], $images);

  $myres['title']=str_replace('-淘寶網','',$title);

  $myres['price']=current($result['data']['originalPrice']);

  $myres['act_price']=current($result['data']['promotion']['promoData']);

  $myres['stock']=$result['data']['dynStock']['stock'];

  $myres['banners']=$images[1];
 }else{
  //匹配是否下架
  if(strpos($content,'此寶貝已下架')!==false){
   return false;
  }
  $start=strpos($url,'id=');
  $item_id=substr($url,$start+4,12);
  if(!is_numeric($item_id)){
   $start=strpos($url,'?id=');
   $end=strpos($url,'spm');
   $item_id=substr($url,$start+4,$end-$start-4);
  }
  preg_match("|title>(.*)/title>|isU",$content,$match);
  $title=$match[1];
  $myurl='https://mdskip.taobao.com/core/initItemDetail.htm?cachedTimestamp=1500562177777queryMemberRight=truecartEnable=trueofflineShop=falseaddressLevel=2itemId='.$item_id.'tryBeforeBuy=falseisAreaSell=falsetmallBuySupport=trueisPurchaseMallPage=falsehousehold=falseisForbidBuyItem=falseservice3C=falseisRegionLevel=falseshowShopProm=falseisSecKill=falsesellerPreview=falseisUseInventoryCenter=falseisApparel=truecallback=setMdskiptimestamp=1500562172109isg=AiUlDZFWmP/sMgVurQSILU3Ytet/Zdisisg2=Ajk51JIhRFqKzxmiNPP6dkYxSKXT7iySkzSTeVtu9WDf4ll0o5Y9yKdyEtHu';
  //價格庫存信息
  $ch = curl_init();
  curl_setopt ($ch, CURLOPT_URL, $myurl);
  $opt[CURLOPT_HEADER]=false;
  $opt[CURLOPT_CONNECTTIMEOUT]=15;
  $opt[CURLOPT_TIMEOUT]=300;
  $opt[CURLOPT_AUTOREFERER]=true;
  $opt[CURLOPT_USERAGENT]='Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11';
  curl_setopt_array($ch,$opt);
  curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt ($ch,CURLOPT_REFERER,$url);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  $out_put=curl_exec ($ch);
  curl_close ($ch);
  $res = mb_convert_encoding( $out_put, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5' );
  $res=str_replace('setMdskip',"",$res);
  $res=str_replace('(',"",$res);
  $res=str_replace(')',"",$res);
  $result=json_decode($res,true);
  $nowk="";
  $nowstore="";
  foreach($result['defaultModel']['inventoryDO']['skuQuantity'] as $k=>$val){
   $nowk=$k;
   $nowstore=$val;
   break;
  }

  $myres['title']=str_replace('-tmall.com天貓','',$title);

  $myres['price']=$result['defaultModel']['itemPriceResultDO']['priceInfo'][$nowk]['price'];

  $myres['act_price']=isset($result['defaultModel']['itemPriceResultDO']['priceInfo'][$nowk]['suggestivePromotionList'])?$result['defaultModel']['itemPriceResultDO']['priceInfo'][$nowk]['suggestivePromotionList']:$result['defaultModel']['itemPriceResultDO']['priceInfo'][$nowk];

  $myres['stock']=$result['defaultModel']['inventoryDO']['totalQuantity']?$result['defaultModel']['inventoryDO']['totalQuantity']:$nowstore['quantity'];
  //查詢出圖片信息
  preg_match('|ul id="J_UlThumb" class="tb-thumb tm-clear">(.*)/ul>|isU',$content, $match);
  preg_match_all('/img src="(.*?)" \//',$match[1],$images);
  $myres['banners']=$images[1];
 }
 return $myres;
}

上述代碼用到phpquery的庫,但是其實沒啥用,直接用Curl就行,具體爬取的數據可以穿參查看結果,方法不區分淘寶和天貓鏈接,但是前提是必須是PC端鏈接,另外正則寫的不規范,所以可以自己重寫正則來匹配數據。

更多內容請參考專題《python爬取功能匯總》進行學習。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PHP 爬取網頁的主要方法
  • php記錄搜索引擎爬行記錄的實現代碼
  • php與python實現的線程池多線程爬蟲功能示例
  • php實現簡單爬蟲的開發
  • php實現爬取和分析知乎用戶數據
  • PHP爬蟲之百萬級別知乎用戶數據爬取與分析
  • PHP實現簡單爬蟲的方法
  • 淺析php如何實現爬取數據原理

標簽:興安盟 株洲 濱州 南京 白酒營銷 南昌 太原 曲靖

巨人網絡通訊聲明:本文標題《php爬取天貓和淘寶商品數據》,本文關鍵詞  php,爬取天,貓,和,淘寶,商品,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《php爬取天貓和淘寶商品數據》相關的同類信息!
  • 本頁收集關于php爬取天貓和淘寶商品數據的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 皇上在龙椅上含玉势h| ?人妻の波多野结衣| 天天干天天要| 宝贝含着做到哭h男男| 男人女人做刺激视频免费| 爽灬爽灬爽灬毛及A片人妖| 12娇小末成年性事ⅹⅹⅹⅹⅹ| 秋葵下载| 酒巷笙歌打臂缝姜| 英语老师的大兔子又大又软又好吃 | 午夜视频在线观看免费视频| 男毛片| 嗯啊好爽真紧嗯啊| 国产寡妇婬乱A片毛片视频 | 80s在线播放| 蜜臀视频AV视频一区尤物| 最爽的性过程描写| 午夜视频成人| 好大好爽我要喷水了(h)| 天堂AV国产一区二区熟女人妻| 又黄又爽的成人免费网站 | 91丨九色丨白浆秘?小青龙| MM1313亚洲精品无码小说| 里番家属| 亚洲自拍图片区| 午夜视频免费观看| 国产91麻豆视频| 日韩精品一区二区三区蜜臀| 试衣间里的疯狂高h| 国产午夜三级一区二区三| 国产又黄又粗又色又刺激视频| 欧美??????视频| 国产精品粉嫩无套内谢| 1314成人免费看A片| 动漫美女禁处被桶爆漫画触手| 男女无遮挡XX00动态图120秒国片| 人与牲功ZZZXXXOOOO| 最近中文字幕2018高清在线| 55夜色66夜色国产精品视频| 日本韩国在线| 国产女人18水真多18精品一级做|