iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php如何爬取天猫和淘宝商品数据
  • 958
分享到

php如何爬取天猫和淘宝商品数据

php开发语言网络爬虫数据挖掘大数据 2023-09-15 20:09:10 958人浏览 八月长安
摘要

这篇文章主要介绍了PHP如何爬取天猫和淘宝商品数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 一、思路 最近做了一个网站用到了从网址爬取天猫和淘宝的商品信息,首先看了下手

这篇文章主要介绍了PHP如何爬取天猫和淘宝商品数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、思路

最近做了一个网站用到了从网址爬取天猫和淘宝的商品信息,首先看了下手机端的网页发现用的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("|(.*)|isU",$content,$match);  $title=$match[1];  //价格库存信息  $ch = curl_init();  curl_setopt ($ch, CURLOPT_URL, '/tupian/20230522/sib.htm  $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('|(.*)|isU', $content, $match);  preg_match_all('/ion']['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("|(.*)|isU",$content,$match);  $title=$match[1];  $myurl='/tupian/20230522/initItemDetail.htm  //价格库存信息  $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('|(.*)|isU',$content, $match);  preg_match_all('/

上述代码用到phpquery的库,但是其实没啥用,直接用Curl就行,具体爬取的数据可以穿参查看结果,方法不区分淘宝和天猫链接,但是前提是必须是PC端链接,另外正则写的不规范,所以可以自己重写正则来匹配数据。

封装后的接口名称:item_get 

响应字段表-试用API数据

名称类型必须示例值描述

item

item[]1宝贝详情数据

num_iid

Bigint1520813250866宝贝ID

title

String1三刃木折叠刀过安检创意迷你钥匙扣钥匙刀军刀随身多功能小刀包邮宝贝标题

desc_short

String0商品简介

promotion_price

Int0优惠价

price

Float125.8价格

total_price

Float00

suggestive_price

Float00

orginal_price

String025.80原价

nick

String0欢乐购网掌柜昵称

num

Int03836库存

min_num

Int00最小购买数

detail_url

String0https://file.lsjlt.com/upload/f/202309/15/gfkcwz5r2hh.jpg宝贝图片

brand

String0三刃木品牌名称

brandId

Int08879363品牌ID

rootCatId

Int050013886顶级分类ID

cid

Int150014822

crumbs

Mix0[]导航菜单

created_time

String0

modified_time

String0

delist_time

String0

desc

String0商品详情

desc_img

Mix0[]商品详情图片

item_imgs

Mix0item_imgs[]商品图片

item_weight

String0

item_size

String0

location

String0发货地

express_fee

Float00.00快递费用

ems_fee

Float0EMS费用

post_fee

Float0物流费用

shipping_to

String0发货至

has_discount

Boolean0false是否有优惠

video

video[]0商品视频

is_virtual

String0

is_promotion

Boolean0false是否促销

props_name

String01627207:1347647754:颜色分类:长方形带开瓶器+送工具刀卡+链子;1627207:1347647753:颜色分类:椭圆形带开瓶器+送工具刀卡+链子;商品属性名。格式为pid1:vid1:name1:value1;pid1:vid2:name2:value2。

prop_imgs

prop_imgs[]0商品属性图片列表

property_alias

String020509:9974422:36;1627207:28326:红色;20509:9975710:38;1627207:28326:红色;20509:9981357:40;1627207:28326:红色销售属性值别名。格式为pid1:vid1:alias1;pid1:vid2:alia2。

props

Mix0[{ "name": "产地","value": "中国" }]商品属性

total_sold

Int0

skus

skus[]0商品规格信息列表

seller_id

Int02844096782卖家ID

sales

Int0138销量

shop_id

Int0151372205店铺ID

props_list

Mix0{20509:9974422: 尺码:36}商品属性

seller_info

seller_info[]1卖家信息

tmall

Boolean0false是否天猫

error

String0错误信息

warning

String0警告信息

url_log

Mix0[]

favcount

Int00

fanscount

Int00

method

String0item_tmall:pget_item

promo_type

String0

props_img

Mix01627207:28326": "//img.alicdn.com/imgextra/i2/2844096782/O1CN01VrjpXt1zyCc9DvERE_!!2844096782.jpg属性图片

shop_item

Mix0[]

relate_items

Mix0[]

来源地址:https://blog.csdn.net/Jernnifer_mao/article/details/132170153

--结束END--

本文标题: php如何爬取天猫和淘宝商品数据

本文链接: https://www.lsjlt.com/news/409104.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php如何爬取天猫和淘宝商品数据
    这篇文章主要介绍了php如何爬取天猫和淘宝商品数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 一、思路 最近做了一个网站用到了从网址爬取天猫和淘宝的商品信息,首先看了下手...
    99+
    2023-09-15
    php 开发语言 网络爬虫 数据挖掘 大数据
  • Python爬虫学习教程:天猫商品数据爬虫
    天猫商品数据爬虫使用教程下载chrome浏览器查看chrome浏览器的版本号,下载对应版本号的chromedriver驱动pip安装下列包pip install seleniumpip install pyquery登录微博,并通过微博绑定...
    99+
    2023-06-02
  • PHP请求API接口案例采集电商平台数据获取淘宝/天猫优惠券查询示例
    优惠券查询API接口对于用户和商家来说具有重要作用,可以方便地获取优惠券信息,进行优惠券搜索和筛选,参与活动和促销推广,提供数据分析和决策支持,提升用户体验和忠诚度,为商家增加销售额和市场竞争力。 taobao.item_search_co...
    99+
    2023-09-23
    php 开发语言 数据挖掘 前端 大数据
  • PHP调用淘宝app商品详情原数据 API 接口
    淘宝是一个好逛、丰富、有趣的消费生活社区,每天有亿万消费者来淘宝“逛街”:发现好物、找到乐趣、表达体验……淘宝能满足人们生活中的各种需求:搜索和浏览商品、加入购物车、下单支付、物流查询、客服交流、发表购物评论、分享优质商品等等,还能通过本地...
    99+
    2023-09-02
    java 开发语言
  • java爬虫如何爬取猫眼电影TOP榜数据
    这篇文章给大家分享的是有关java爬虫如何爬取猫眼电影TOP榜数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。爬虫是如何爬取猫眼电影TOP榜数据的。主要抓取的内容有排名、图片、电影名称、主演、上映时间和评分信息...
    99+
    2023-06-02
  • Python如何抓取淘宝IP地址数据
    这篇文章主要介绍Python如何抓取淘宝IP地址数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!示例代码def fetch(ip):    url =&n...
    99+
    2023-06-02
  • python如何获取商品数据
    要获取商品数据,你可以使用Python中的各种库和模块来实现。以下是一些常用的方法:1. 使用网络爬虫:使用Python的库,如Be...
    99+
    2023-08-23
    python
  • Python爬虫实战之如何采集淘宝商品信息并导入EXCEL表格
    本篇内容主要讲解“Python爬虫实战之如何采集淘宝商品信息并导入EXCEL表格”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python爬虫实战之如何采集淘宝商品信息并导入EXCEL表格”吧!...
    99+
    2023-06-16
  • 如何用Python爬取天气数据
    本篇内容主要讲解“如何用Python爬取天气数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何用Python爬取天气数据”吧!一、[知识点]:  ...
    99+
    2024-04-02
  • Python中如何爬取京东商品数据并实现数据可视化
    这篇文章将为大家详细讲解有关Python中如何爬取京东商品数据并实现数据可视化,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、开发工具Python版本:3.6.4相关模块:DecryptLogin模块;...
    99+
    2023-06-15
  • 如何使用python爬取电商数据
    要使用Python爬取电商数据,可以按照以下步骤进行:1. 确定目标网站:首先要确定你要爬取的电商网站,以及你要爬取的数据类型。2....
    99+
    2023-08-23
    python
  • PHP中如何进行数据爬取和爬取后的处理?
    随着互联网的蓬勃发展,数据在我们的日常生活和工作中变得越来越重要。而网络上的数据也越来越多,获取这些数据变得越来越重要。因此,数据爬取在现代网络应用开发中变得越来越流行。PHP是广泛使用的服务器端编程语言之一,也可以用于数据爬取和处理。在本...
    99+
    2023-05-20
    PHP 数据处理 数据爬取
  • 如何通过抓取淘宝评论为例讲解Python爬取ajax动态生成的数据
    如何通过抓取淘宝评论为例讲解Python爬取ajax动态生成的数据,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在学习python的时候,...
    99+
    2024-04-02
  • 用Python爬取618当天某东热门商品销量数据,看看大家喜欢什么!
    前言 本文结构如下: 1、爬取某东畅销商品数据 2、清洗数据并并进行简单分析 3、将数据进行可视化展示 数据的字段如下: 一共爬取了243条某东畅销商品数据 一、获取数据 1. 分...
    99+
    2024-04-02
  • PHP中如何进行网络爬虫和数据抓取?
    随着互联网时代的到来,网络数据的爬取与抓取已成为许多人的日常工作。在支持网页开发的程序语言中,PHP以其可扩展性和易上手的特点,成为了网络爬虫和数据抓取的热门选项。本文将从以下几个方面介绍PHP中如何进行网络爬虫和数据抓取。一、HTTP协议...
    99+
    2023-05-20
    PHP 网络爬虫 数据抓取
  • 如何获取microstore商品详情接口php接口jason数据字段
    随着科技的发展,API接口成为了各行业发展的最新趋势。在微店购物平台中,商品详情API接口的引入,为商家和消费者提供了更加便捷、高效的用户体验。本文将为大家详细介绍微店商品详情API接口的优势和使用方...
    99+
    2023-09-04
    php 开发语言
  • 如何使用PHP做异步爬取数据
    这篇“如何使用PHP做异步爬取数据”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何使用PHP做异步爬取数据”文章吧。什么是...
    99+
    2023-07-05
  • 如何使用PHP蜘蛛爬虫框架来爬取数据
    这篇文章主要介绍了如何使用PHP蜘蛛爬虫框架来爬取数据的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用PHP蜘蛛爬虫框架来爬取数据文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • php如何实现商品添加功能并写入数据库
    这篇文章主要介绍了php如何实现商品添加功能并写入数据库的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php如何实现商品添加功能并写入数据库文章都会有所收获,下面我们一起来看看吧。数据库表 写入数据的...
    99+
    2023-07-05
  • PHP中如何进行商业智能和数据分析?
    随着互联网的发展和数据量的不断增加,商业智能和数据分析变得越来越重要。在这个无所不在的数据时代,很多企业也开始关注如何利用数据来做出更明智的商业决策。而PHP,作为最常用的Web编程语言之一,也可以用来实现商业智能和数据分析的任务。本文将详...
    99+
    2023-05-21
    数据分析 商业智能 PHP
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作