批量爬取苏宁易购领券中心所有优惠券

#coding=utf-8
import requests
import json
import os
import time

getclass=requests.get('https://quan.suning.com/getClassList__1__7070748075_.htm')
class_data=json.loads(getclass.text)
code=[]
name=[]
#print(len(class_data['saleCatgList']))
for k in range(len(class_data['saleCatgList'])):
	code.append(class_data['saleCatgList'][k]['saleCatgCode'])
	name.append(class_data['saleCatgList'][k]['saleCatgName'])
dict_list=dict(zip(code,name))
#print(dict_list)
#url_list=[]
if os.path.exists('C:\youhui.txt'):
	os.remove('C:\youhui.txt')
for code in dict_list.keys():
	url_list=[]
	with open('C:\youhui.txt','a') as f:
		print('开始找券~~:%s' % dict_list[code])
		print('--------------------------')
		f.write(dict_list[code])
		f.write('\n')
		f.write('--------------------------\n')
		f.close()
		for i in range(1,6):
			if len(code)==6:
				url_list.append('https://quan.suning.com/getClassActivityRecommend_1_'+code+'_15_'+str(i)+'_7070748075_.htm')
			else:
				url_list.append('https://quaapi.suning.com/getCouponCenterActivities_1__'+code+'____'+str(i)+'_15_callback.htm')
		#print(url_list)
		
		for url in url_list:
			response=requests.get(url)
			json_data=json.loads(response.text.strip('callback').strip('(').strip(')'))
			for j  in range(len(json_data['freeCouponList'])):
				finalname=json_data['freeCouponList'][j]['shopName']
				finaldesc=json_data['freeCouponList'][j]['actDesc']
				applink=json_data['freeCouponList'][j]['applink']
				pclink=json_data['freeCouponList'][j]['pclink']
				#print(('%s\n%s\n\n') % (finalname,finaldesc))
				with open('C:\youhui.txt','a') as f:
					f.write(('券名称:%s\n券内容:%s\napp领取地址:http:%s\n电脑领取地址:http:%s\n\n') % (finalname,finaldesc,applink,pclink))
					f.close()
	
print('结果请见C:\youhui.txt')
time.sleep(5)	

程序运行如图
批量爬取苏宁易购领券中心所有优惠券
结果输出到文件
批量爬取苏宁易购领券中心所有优惠券
新人上手爬虫,仅为业余爱好,不做商业用途。欢迎大神批评指正交流--------
写成这样如果也愿意转载的话。。。还是请注明吧

相关文章: