scrapy 中 css 提取信息

 

 

 

 

 

item_nodes = response.css('#datalist tr') #提取大标签
        for item_node in item_nodes:
            #根据 item 文件中所定义的字段内容,进行字段内容的抓取
            item_loader = StockstartItemLoader(item=StockstarItem(),selector=item_node)
            item_loader.add_css('code','td:nth-child(1) a::text')
            item_loader.add_css('abbr','td:nth-child(2) a::text')
            item_loader.add_css('last_trade','td:nth-child(3) span::text')
            item_loader.add_css('chg_ratio','td:nth-child(4) span::text')
            item_loader.add_css('chg_amt', 'td:nth-child(5) span::text')
            item_loader.add_css('chg_ratio_5min', 'td:nth-child(6) span::text')
            item_loader.add_css('volumn', 'td:nth-child(7)::text')
            item_loader.add_css('turn_over', 'td:nth-child(8)::text')


#.add_css() 第一个参数为容器定义的字段,第二个为提取 td 标签下的子节点(用一个‘:’),依次1,2,3.。。空一格下一个标签,提取其中得文字‘::text’

 

 

提取属性值有空格的值,匹配出属性值的某个部分

<p class="star-rating Three">
            <i class="icon-star"></i>
            <i class="icon-star"></i>
            <i class="icon-star"></i>
            <i class="icon-star"></i>
            <i class="icon-star"></i>
        </p>
>>> sel = response.css('div.col-sm-6 product_main')
>>> sel.css('p.star-rating').re_first('star-rating ([A-Za-z]+)')
'Three'

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值