闲着没事尝试抓一下京东的数据,需要使用到的库有:BeautifulSoup,urllib2,在Python2下测试通过
# @param 用python编写的抓京东商品价格的爬虫# @author 内存溢出 jb51.cc|www.www.jb51.cc from creepy import Crawlerfrom BeautifulSoup import BeautifulSoupimport urllib2import Jsonclass MyCrawler(Crawler): def process_document(self,doc): if doc.status == 200: print '[%d] %s' % (doc.status,doc.url) try: soup = BeautifulSoup(doc.text.decode('gb18030').encode('utf-8')) except Exception as e: print e soup = BeautifulSoup(doc.text) print soup.find(ID="product-intro").div.h1.text url_ID=urllib2.unquote(doc.url).decode('utf8').split('/')[-1].split('.')[0] f = urllib2.urlopen('http://p.3.cn/prices/get?skuID=J_'+url_ID,timeout=5) price=Json.loads(f.read()) f.close() print price[0]['p'] else: passcrawler = MyCrawler()crawler.set_follow_mode(Crawler.F_SAME_HOST)crawler.set_concurrency_level(16)crawler.add_url_filter('\.(jpg|jpeg|gif|png|Js|CSS|swf)$')crawler.crawl('http://item.jd.com/982040.HTML')# End www.jb51.cc
部分运行结果:
[200] http://item.jd.com/519836.HTML
三星 HM1200 原装蓝牙耳机 黑色
118.00
[200] http://item.jd.com/603133.HTML
捷波朗 EASYVOICE+ 易音 蓝牙耳机 黑色
-1
[200] http://item.jd.com/1030552473.HTML
【年终热卖】嘉源手机N699 2.8寸双屏双卡双待双电2000毫安翻盖手机 黑
268.00
总结以上是内存溢出为你收集整理的python 京东商品价格爬虫示例全部内容,希望文章能够帮你解决python 京东商品价格爬虫示例所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)