scrapy爬虫简单项目入门练习

【写在开头】

scrapy环境配置配置好了之后,开始着手简单项目入门练习。关于环境配置见上一篇博客https://www.cnblogs.com/ljxh/p/11235079.html

【正文部分】

视频是跟着CZ的学的,入门练习是爬取CZ官网的师资信息,

1、新建工程

  控制台输入:scrapy startproject myspider 新建一个爬虫的工程文件,后面的myspider 可以自己命名。

2、生成一个爬虫

  控制台输入scrapy genspider itcast "itcast.cn",itcast是爬虫文件的名称,后面的"itcast.cn"是允许去爬的范围。完成上面两步之后如图1所示。

 

图1 生成的工程文件截图

3、更改itcast.py爬虫文件如下,更改最开始请求的URL地址和处理URL响应的函数,程序中用到了xpath对响应进行信息提取,还有日志模块生成日志文件。

# -*- coding: utf-8 -*-
import scrapy
import logging

logger = logging.getLogger(__name__)

class ItcastSpider(scrapy.Spider):
    name = 'itcast'
    allowed_domains = ['itcast.cn']  # 允许爬去的范围
    start_urls = ['http://www.itcast.cn/channel/teacher.shtml']  # 最开始请求的URL地址

    # parse方法名是不能改变的,下面的属性名item是可以随意定义的
    def parse(self, response):
        # 处理start_url地址对应的响应
        # 分组
        li_list = response.xpath("//div[@class='tea_con']//li")
        for li in li_list:
            item = {}
            item['name'] = li.xpath(".//h3/text()").extract_first()
            item['title'] = li.xpath(".//h4/text()").extract_first()
            logger.warning(item)
            yield item

4、更改setting.py文件,将管道处理激活,即取消PIPELINES的注释,用于保存数据。

图2 激活PIPELINES

5、在setting.py文件中设置日志信息。

LOG_LEVEL = "WARNING"
LOG_FILE = './log.log'

6、在控制台输入:scrapy crawl itcast,后面itcast根据自己的爬虫文件的名字来,运行结果如下:

 

图3 控制台输出的爬虫信息

备注:由于爬取的数据很多,这里只是截取了包含爬虫命令的一段数据。

图4 日志文件截图

 【写在最后】

  到这一个简单入门的爬虫项目就完成了,后面还有很多东西要学,这里做个简单的记录。文章是根据CZ的视频学习练习的,如有侵权,删帖。

 

 小编尊重原创,文章如有侵权,联系小编删帖,谢谢监督。转发请备注出处!

posted @ 2019-07-25 17:02  谁用了牧羊少年  阅读(563)  评论(0编辑  收藏  举报