简单的商品信息爬虫——爬易迅网

收集到非常多易迅网的商品ID,于是想把这些ID相应的商品信息爬下来。通过简单分析发现。易迅网的各类信息都是直接放在HTML页面上。所以,解析一个页面就好了。

最后返回每一个ID相应的商品url,标题,易迅价,促销价。类目 。

以下是python代码:

#!/usr/bin/env python
#coding:utf-8
'''
Created on 2015年03月11日
@author: zhaohf
'''
import urllib2
from bs4 import BeautifulSoup
def get_yixun(id):
    price_origin,price_sale,category = '0','0',''
    url = 'http://item.yixun.com/item-' + id + '.html'
    html = urllib2.urlopen(url).read().decode('utf-8')
    soup = BeautifulSoup(html)
    title = unicode(soup.title.text.strip().strip(u'【价格_报价_图片_行情】-易迅网').replace(u'】','')).encode('utf-8').decode('utf-8')
    try:
        soup_origin = soup.find("dl", { "class" : "xbase_item xprice xprice_origin" })
        price_origin = soup_origin.find("span", { "class" : "mod_price xprice_val" }).contents[1].text #易迅价
        print  'price_origin: ' + price_origin
    except:
        pass
    try:
        soup_sale= soup.find('dl',{'class':'xbase_item xprice'})
        price_sale = soup_sale.find("span", { "class" : "mod_price xprice_val" }).contents[1] #促销价
        print  'price_sale: '+ price_sale
    except:
        pass
    try:
        category = unicode(soup.find('div',{'class','mod_crumb'}).text).encode('utf-8').decode('utf-8').replace('\n','') #所属类目
    except:
        pass
    if not (price_origin is None or price_origin =='0'):
        print url + '\t'+ price_origin + '\t' + price_sale + '\t'+ category
        return url + '\t' + title +'\t'+price_origin+'\t'+price_sale+ '\t'+ category
    else:
        print url + '\t' + price_sale+ '\t' + price_sale + '\t' + category
        return url + '\t' + title +'\t'+price_sale+'\t'+price_sale+ '\t'+ category
    return None


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值