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']

 

posted @ 2017-03-31 10:31  安筱雨  阅读(8299)  评论(9编辑  收藏  举报