python爬取京东价格
昨天准备爬取一个京东商品的价格,正则写好了一直是空的
后来我去页面里面看了下,价格标签里果然是空的
百度了下,大家都说是js来控制显示价格的
于是去抓包试试,找到了一条mgets的请求
中间很多参数不知道是什么意思,但是skuIds就是商品的编号
去掉其他参数,只保留编号
https://p.3.cn/prices/mgets?skuIds=J_4609662
一样能得到响应
这个p就是price了,m不知道是什么,目前碰到的op个p的值是一样的,也不知道这个是啥意思
#-*- coding: utf-8 -*- import urllib import urllib2 import re import json import sys #输出中文+字符串报错 reload(sys) sys.setdefaultencoding('utf-8') #商品编号 code='4609662' #请求地址 url='https://p.3.cn/prices/mgets?skuIds=J_'+code #获取地址 request=urllib2.Request(url) #打开连接 response=urllib2.urlopen(request) content=response.read() result=json.loads(content) json=result[0] print '价格:'+json['p']