'''requests 和re 库使用前需要对其进行安装
方法为:打开cmd(cmd是命令提示符)然后输入 pip install requests
安装完成后,在进行re的安装 pip install re
'''
import requests
import re
goods='书包' #goods是需要搜索的商品名称
'''url 是 需要爬取的网页地址,获取到URL之后,用requests.get方法进行网页的爬取,timeout是时间'''
url='https://ai.taobao.com/search/index.htm?key='+goods
r=requests.get(url,timeout=30)
r.raise_for_status()
r.encoding=r.apparent_encoding
print(r.status_code) #打印状态码,如果为200则说明爬取成功,如状态码不清楚则可以参考本人其他博客中的状态码。
list=[] #先构造一个空的列表,用来存放数据
title1=re.findall(r'\"title\":\".*?\"',r.text) #运用正则表达式来获取需要的商品名称
price1=re.findall(r'\"salePrice\":\"[\d.]*\"',r.text) #运用正则表达式来获取需要的商品价格
for i in range(0,len(price1)):
title=eval(title1[i].split(':')[1])
price=eval(price1[i].split(':')[1])
list.append([title,price]) #将所有数据存储到列表中
print('{:^5}\t{:^5}\t{:<35}'.format('序号','价格','商品名称'))
count=1
for g in list:
print('{:^5}\t{:^5}\t{:<35}'.format(count,g[1],g[0]))
count+=1
此段代码并没有对爬虫进行深入解说,如果只是爬取商品来进行比对价格的话,还是比较有用的。下面为爬取结果。