php淘宝采集
⑴ 请帮忙用js或php写一个可以采集淘宝和天猫商品优惠价格的代码用函数方
//==UserScript==
//@nameJD
//@namespacehttp://tampermonkey.net/
//@version0.1
//@!
//@authorYou
//@matchhttps://item.jd.com/*
//@grantnone
//==/UserScript==
/*jshint-W097*/
'usestrict';
//Yourcodehere...
vardivObj=document.createElement("input");
divObj.type="button";
divObj.value='获取抓取内容';
divObj.style.marginTop="20px";
divObj.style.marginBottom="20px";
divObj.style.marginLeft="50px";
varfirst=document.body.firstChild;
document.body.insertBefore(divObj,first);
varresult={};divObj.onclick=function(){
//获取价格
if(document.getElementById("jd-price")){
varpriceDiv=document.getElementById("jd-price");
varprice=priceDiv.innerText;
price=price.substr(1);
}elseif(document.getElementById("price")){
varpricePri=document.getElementById("price");
varpriceDiv=pricePri.firstElementChild;
varprice=priceDiv.innerText;
}elseif(document.getElementsByClassName("price")[0]){
varpriceClass=document.getElementsByClassName("price");
varpriceDiv=priceClass[0];
varprice=priceDiv.innerText;
}
result.price=price;
}
⑵ 关于淘宝php如何获取每个类目下的宝贝
是不是只有图片是一样的,你看看每个商品的ID是不是一样。
⑶ 如何采集淘宝数据
一般的采集软件不支持的,支持的也很复杂。
我找了很久,现在用熊猫智能采集软件,不用写规则,不懂技术亦可轻松操作
不需要编写采集规则,不需要关心网页源码,全程鼠标操作。操作界面友好、直观。全程智能辅助。且不用担心设置的采集会频繁失效。
特别是图文混排内容合并采集非常适合采集淘宝:可以把文字内容中夹杂的非文字内容(如图片、动画、视频、音乐、文件等),熊猫会进行合适的处理,使得采集结果可以保留被采集前的原样。
地址是:采集软件.C OM(采集软件四个字转换成拼音)
⑷ php curl 是不是不能采集淘宝天猫的链接
你好
这个是可以采集的
只是使用比较复杂
不仅要有跳转,还需要传递 cookie
curl 仅能获取目标页面的 html 代码,并不能执行其中的 js 程序
而该页面的关键数据同时通过 js 产生的
⑸ php怎么抓取 淘宝搜索页面的Html内容
发送http头信息试试,另外想要做蜘蛛程序的话,还是python比较好用,有丰富了web类库
⑹ phpcms如何编写采集淘宝网的规则
不好写,我看了看,淘宝的url是转换过的,规则不太好写
你可以试着用火车头看能采集不
⑺ 一键上传淘宝php源码
PHP实现采集抓取淘宝网单个商品信息,本文是一种实现思路,使用file_get_contents函数实现,并给出了采集正则,需要的朋友可以参考下
调用淘宝的数据可以使用淘宝提供的api,如果只需调用淘宝商品图片名称等公开信息在自己网站上,使用php中的 file_get_contents 函数实现即可。
思路:
file_get_contents(url) 该函数根据 url 如 http://www..com 将该网页内容(源码)以字符串形式输出(一个整字符串),然后配合preg_match,preg_replace等这些正则表达式操作就可以实现获取该url特定div,img等信息了。当然前题是淘宝在单个商品页面的结构是固定的,如500图的img中id就是J_ImgBooth!
具体实现方法:(获取500图,名称,价格,属性及商品描述)
复制代码 代码如下:
$text=file_get_contents("http://item.taobao.com/item.htm?id=2380347279"); //将url地址上页面内容保存进$text
A.获取500图:
复制代码 代码如下:
preg_match('/<img[^>]*id="J_ImgBooth"[^r]*rc=\"([^"]*)\"[^>]*>/', $text, $img);
//运用正则抓取img标签中id为J_ImgBooth的img,$img[0]为该500图img标签,$img[1]为500图的图片地址;
B. 获取名称:
复制代码 代码如下:
preg_match('/<title>([^<>]*)<\/title>/', $text, $title);
//因为正文中的商品名称标签没有特殊class或id正则不好抓取,就抓<title>标签中的内容了,一般来说title中内容就是商品名称了(实际有些出入),$title[0]整个title标签 $title[1]标签中内容;
$title=iconv('GBK','UTF-8',$title);
//如果你的网站是utf8编码,那么需要进行一下转码(淘宝是gbk编码)
C.获取价格:
复制代码 代码如下:
preg_match('/<([a-z]+)[^i]*id=\"J_StrPrice\"[^>]*>([^<]*)<\/\\1>/is', $text, $price);
//同理获取id为J_StrPrice的标签内容$price[2], $price[0]是整个标签, $price[1]为strong标签名;
$price=floatval($price);//放入数据库估计还有转一下变量类型
D.获取属性:
这之前获取的内容都是在单标签中相对只需一个正则就可搞定,然而如果要获取如
复制代码 代码如下:
…
<div id=”xxx”>
…
<ul>
…
</ul>
<div>…
<div>…
</div>
</div>
</div>
…
这样特定div中有未知n个<>标签,获取该特定div将会非常的困难,搜了下网上,最接近的也只是”/<([a-z]+)[^>]*>([^<>]|(?R))*<\/\\1>/”这样使用递归抓取标签对,但是他不能抓特定标签,所以想要轻松抓取class=”attributes”的div我是没法办到了。但是淘宝网页有其特殊性,就是它的各个标签结构基本是固定的…<div>…</div>标签后面不是</div><div id=”description”>就是</div><div>,所以我们可以采用变通法达到获取属性标签内容的目的。
复制代码 代码如下:
preg_match('/<(div)[^c]*class=\"attributes\"[^>]*>.*<\/\\1>/is', $text, $text0);
//这个正则会抓取<div开始到整个页面最后一个</div>标签,当然我们属性标签就在这个的前面部分。
$text1=preg_replace("/<\/div>[^<]*<(div)[^c]*id=\"description\"[^>]*>.*<\/\\1>/is","",$text0);
//匹配到</div ><div id=”description”>至最后</div>然后用””代替(就是把匹配的删除了),所以如果attributes的div后面紧跟的是description那么我们已经达到目的了。
$attributes=preg_replace("/<\/div>[^<]*<(div)[^c]*class=\"box J_TBox\"[^>]*>.*<\/\\1>/is","",$text1);
//如果attributes后面紧跟box J_Tbox标签,那么我们还需要使用以上这步来剔除box J_Tbox标签,当然如果attributes的div后面紧跟的是description,这一步将不会匹配到任何即什么都不会做。
E.获取描述:
通过上面方法你肯定觉得淘宝页面上任何标签都可以很简单获取了吧(我之前也是这么想的),但是使用这个方法获取描述时得到的内容将会是“描述加载中”,是的,这个描述内容不是在源码中的,它是打开页面加载进一大堆js后,不知道从淘宝的哪个角落中加载进来的。
好吧,那么我们也可以模仿它放一些js进去。不知道哪些对加载描述有用?没事,全加载进来肯定没错。不知道需要放那些特定div上去有作用?抓一个源码,删掉一些div一步步试试看,你会发现“<div id=”detail”> </div>
复制代码 代码如下:
<div id="description">
<div id="J_DivItemDesc">描述加载中</div>
</div>
这几个div是加载描述所必须的,那么下面就是写代码了:
复制代码 代码如下:
preg_match_all('/<script[^>]*>[^<]*<\/script>/is', $text, $content);//页面js脚本
$content=$content[0];
$description='<div id="detail"> </div>
<div id="description">
<div id="J_DivItemDesc">描述加载中</div>
</div>';
foreach ($content as &$v){$description.=iconv('GBK','UTF-8',$v);};
//将这个$description放进页面,描述就会自动的加载进来了,当然多个商品描述在同一个页面也会只有一个描述会被加载的。
⑻ 淘宝采集工具有哪些商家如何采集图片
淘宝卖家数据采集工具是一款简单易用的淘宝数据采集器,能够直接获取各种淘宝卖家的信息,这样就能够更加便捷的进行各种有针对性的营销和推广。软件启动之后,用户仅需设定好对应的采集条件,如关键词、省市、店铺等级等,产品就会将相匹配的数据进行一键采集,让你更精准、更快速的找到理想中的数据。
使用说明
1、输入一个关键词,就可以找到想要的信息。
2、双击店铺名称查看更详细的淘宝店铺信息。
软件功能
1、软件可以采集到店铺名称,会号账号,店铺类型,宝贝数量,销量,省份,城市,电话等。
2、输入要搜索的关键词,选择要搜索的省市、店铺级别,点击【开始搜索】即可。
3、软件操作的界面人性化的选项“开始、暂停、结束、删除”。
4、采集后完成后可以选择合并所有数据。
5、可以选择不同格式,不同的字段导出想要的数据。
⑼ php 怎样 采集到 阿里巴巴的商品信息
<?php
classalibaba_analyse{
var$code;
var$price;
var$info;
//你的错误位置,构造函数是__construct,而不是__constructs
publicfunction__construct($keywords)
{
//http://search.china.alibaba.com/selloffer/offer_search.htm?keywords=页面是GBK编码,所以需要先转成GBK,在进行URL编码.
$u="http://search.china.alibaba.com/selloffer/offer_search.htm?keywords=".urlencode(iconv('UTF-8','GB2312',$keywords));
$this->code=file_get_contents($u);
}
publicfunctionget_price()
{
/*
价格是在<spanclass="sw-ui-font-priceIcon">450<spanclass="smallSize">.00</span><spanclass="priceUnit"></span></span>这样的字段中.
而不是在<divclass="pricef12c-e1">.*([d.]+?).*</div>中
preg_match_all('/<divclass="pricef12c-e1">.*([d.]+?).*</div>/sU',$this->code,$price);
*/
preg_match_all('/<spanclass="sw-ui-font-priceIcon">(d+)(?:<spanclass="smallSize">)([.d]{3})?</span>/sU',$this->code,$price,PREG_SET_ORDER);
/*
得到的数据格式,所以需要使用array_map整理价格
Array
(
[0]=>Array
(
[0]=><spanclass="sw-ui-font-priceIcon">570<spanclass="smallSize">.00</span>
[1]=>570
[2]=>.00
)
....
)
*/
$this->price=array_map(create_function('$a','return$a[1].$a[2];'),$price);
}
}
$ali=newalibaba_analyse("联想笔记本");
$ali->get_price();
print_r($ali->price);
代码给出了, 而且经过了测试. 代码中有注解.
你自己拷贝过去试试吧
希望能够采纳!,能当成优质答案就最好啦.!
⑽ 急!php怎样跳过淘宝登陆,直接采集到淘宝指数的搜索结果
不告诉你...嘿嘿