如何使用python爬去京东的商品数据?


正在开发一款商品管理的应用,需要一些数据,想通过代码爬去一些京东的商品信息,请教如何书写?

python 开发 网页爬虫 数据

暗夜小疯子 9 years, 8 months ago

京东的商品页面地址比较简单,就是: http://item.jd.com/商品号.html, 比如

 http://item.jd.com/1125138.html

该商品的规格参数,以及基本介绍,都在这个页面里面。

这里给一个参考:

import json
import re
import urllib
for i in range(11348876,11348999):#数字代表京东商品编号
    URL='http://item.jd.com/%s.html'%(i)
    page=urllib.urlopen(URL).read()
    idx=page.find('product:')
    if(idx>=0):
        idx+=8
        res=re.search(r'{.+?}',page[idx:])    #用正则表达式匹配
        text=json.loads(res.group())    #用json读取
        print("%s,%s,%s,%s,%s"%(text['skuid'],text['wMaprice'],text['name'],text['href'],text['jqimg']))

注意:

  1. 你也可以使用urlib2,效率会高一些;
  2. 如果要爬,记得在请求之间给个延迟,不要太频繁。
春哥夸我够爷们 answered 9 years, 8 months ago

Your Answer