爬虫实例1-爬取新闻列表和发布时间

本文介绍了一个使用Scrapy框架进行网页爬取的具体案例。通过创建一个名为shop的Scrapy项目,详细展示了从定义爬取项到实现爬虫逻辑直至处理爬取结果的全过程。案例中爬取了新闻站点的标题和发布时间,并通过pipelines处理了爬取结果。


一、新建工程

scrapy  startproject shop

 

二、Items.py文件代码:

import scrapy

 

class  ShopItem(scrapy.Item):

    title = scrapy.Field()

    time = scrapy.Field()

 

三、shopspider.py文件爬虫代码

#  -*-coding:UTF-8-*-

import scrapy

from shop.items  import ShopItem

 

class  shopSpider(scrapy.Spider):

    name = "shop"

    allowed_domains =  ["news.xxxxxxx.xx.cn"]

    start_urls = ["http://news.xxxxx.xxx.cn/hunan/"]

   

    def parse(self,response):

item  = ShopItem()

item['title']  =  response.xpath("//div[@class='txttotwe2']/ul/li/a/text()").extract()

item['time']  =  response.xpath("//div[@class='txttotwe2']/ul/li/font/text()").extract()

yield  item

 

四、pipelines.py文件代码(打印出内容):

注意:如果在shopspider.py文件中打印出内容则显示的是unicode编码,而在pipelines.py打印出来的信息则是正常的显示内容。

 

class  ShopPipeline(object):

    def process_item(self, item, spider):

        count=len(item['title'])

        print 'news count: ' ,count

        for i in range(0,count):

            print 'biaoti: '+item['title'][i]

            print 'shijian: '+item['time'][i]

        return item

 

五、爬取显示的结果:

root@kali:~/shop#  scrapy crawl shop --nolog

news count:  40

biaoti:  xxx建成国家食品安全示范城市

shijian:  (2017-06-16)

biaoti: xxxx考试开始报名

……………………

…………………..

 本文转自 老鹰a  51CTO博客,原文链接:http://blog.51cto.com/laoyinga/1940001


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值