直接用Curl就行,具体爬取的数据可以穿参查看结果,方法不区分淘宝和天猫链接,但是前提是必须是PC端链接,另外正则写的不规范,所以可以自己重写正则来匹配数据。
创新互联建站提供高防服务器、云服务器、香港服务器、服务器托管等
首先我对你的php代码没看懂,不熟悉这门语言。我当时确实取到了数据,就是用JAVA第三方类库直接解析url对应的html内容,不过访问频率是个问题,不能太快,否则会封ip,可以考虑用sleep休眠机制类似的。不过总的来说还是不太稳定,效果不好
你这个想法很好,但是实现起来很麻烦,首先你需要淘宝对你开放API接口才行,然后写代码有事一个难事,不过我知道有一个软件是可以实现的,甩手掌柜,只需要绑定你的淘宝账号就可以,因为他们一个公司,和淘宝合作,淘宝对其开放API,然后一个团队写代码,所以是可以实现的。不光可以自动下载订单,还可以轻松管理商品,打印发货单,进销存管理等等!
可以通过requests库re库进行淘宝商品爬虫爬取
import requests
import re
def getHTMLText(url):
try:
r= requests.get(url,timeout=30)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return ""
def parsePage(ilt,html):
try:
plt = re.findall(r'\"view_price\":\"[\d+\.]*\"',html)
tlt = re.findall(r'\"raw_title\"\:\".*?\"',html)
for i in range(len(plt)):
price = eval(plt[i].split(':')[1])
title = eval(tlt[i].split(':')[1])
ilt.append([price,title])
except:
print("F")
def printGoodsList(ilt):
tplt = "{:4}\t{:8}\t{:16}"
print(tplt.format("序号","价格","商品名称"))
count = 0
for g in ilt:
count = count +1
print(tplt.format(count,g[0],g[1]))
def main():
goods = '书包'
depth = 2
start_url = ""+ goods
infoList = []
for i in range(depth):
try:
url = start_url +'s='+str(44*i)
html = getHTMLText(url)
parsePage(infoList,html)
except:
continue
printGoodsList(infoList)
main()
这段代码在过去是可以爬取淘宝商品信息,但是因为淘宝的反扒技术升级,便不能让你大摇大摆地进出自如了。
此外也可以借助采集实现采集
1、通过淘宝提供的标准api获取数据
2、通过淘宝的开发者身份创建应用获取数据
3、通过抓取网页的功能再提取自已需要的数据。