scrapy crawl itcast -o teachers.json 爬虫案列

  1. spider.py文件配置

      1
      2 # -*- coding: utf-8 -*-
      3 import scrapy
      4 from itTeachers.items import ItteachersItem
      5
      6
      7 class ItcastSpider(scrapy.Spider):
      8     name = ‘itcast‘
      9     allowed_domains = [‘itcast.cn‘]
     10     start_urls = [‘http://www.itcast.cn/channel/teacher.shtml#‘]
     11
     12     def parse(self, response):
     13         #with open("teacher.html","w") as f:
     14             #f.write(response.body)
     15
     16         items = []
     17
     18         teacher_list = response.xpath(‘//div[@class="li_txt"]‘)
     19         for each in teacher_list:
     20
     21             #我们将得到的数据封装到一个‘ItcastItem‘对象
     22             item = ItteachersItem()
     23             name = each.xpath(‘h3/text()‘).extract()
     24             title = each.xpath(‘h4/text()‘).extract()
     25             info = each.xpath(‘p/text()‘).extract()
     26
     27             #xpath返回的是包含一个元素的列表
     28             item[‘name‘] = name[0]
     29             item[‘title‘] = title[0]
     30             item[‘info‘] = info[0]
     31
     32             items.append(item)
     33         #直接返回最后数据
     34         return items
    ~                         
  2. items.py文件配置

      1 # -*- coding: utf-8 -*-
      2
      3 # Define here the models for your scraped items
      4 #
      5 # See documentation in:
      6 # https://doc.scrapy.org/en/latest/topics/items.html
      7
      8 import scrapy
      9
     10
     11 class ItteachersItem(scrapy.Item):
     12     # define the fields for your item here like:
     13     # name = scrapy.Field()
     14     name = scrapy.Field()
     15     title = scrapy.Field()
     16     info = scrapy.Field()
    

原文地址:https://www.cnblogs.com/hizf/p/8270008.html

时间: 2024-10-10 09:47:37

scrapy crawl itcast -o teachers.json 爬虫案列的相关文章

增量式爬虫案列

增量式爬虫 引言: 当我们在浏览相关网页的时候会发现,某些网站定时会在原有网页数据的基础上更新一批数据,例如某电影网站会实时更新一批最近热门的电影.小说网站会根据作者创作的进度实时更新最新的章节数据等等.那么,类似的情景,当我们在爬虫的过程中遇到时,我们是不是需要定时更新程序以便能爬取到网站中最近更新的数据呢? 一.增量式爬虫 概念:通过爬虫程序监测某网站数据更新的情况,以便可以爬取到该网站更新出的新数据. 如何进行增量式的爬取工作: 在发送请求之前判断这个URL是不是之前爬取过 在解析内容后判

利用scrapy和MongoDB来开发一个爬虫

今天我们利用scrapy框架来抓取Stack Overflow里面最新的问题(问题标题和网址),并且将这些问题保存到MongoDb当中,直接提供给客户进行查询. 安装 在进行今天的任务之前我们需要安装二个框架,分别是Scrapy (1.1.0)和pymongo (3.2.2). scrapy 如果你运行的的系统是osx或者linux,可以直接通过pip进行安装,而windows需要另外安装一些依赖,因为电脑的原因不对此进行讲解. $ pip install Scrapy 一旦安装完成之后你可以直

使用scrapy crawl name启动一个爬虫时出现的问题

使用scrapy crawl name启动一个爬虫时出现的问题,我的项目名字叫做 "spider_city_58",代码如下: from scrapy import cmdline cmdline.execute("scrapy crawl spider_city_58".split()) 来启动一个爬虫,却出现了如下错误 ImportError: No module named win32api 一开始尝试了网上其他的方法,就是去下载"pywin32-2

scrapy按顺序启动多个爬虫代码片段(python3)

问题:在运行scrapy的过程中,如果想按顺序启动爬虫怎么做? 背景:爬虫A爬取动态代理ip,爬虫B使用A爬取的动态代理ip来伪装自己,爬取目标,那么A一定要在B之前运行该怎么做? IDE:pycharm 版本:python3 框架:scrapy 系统:windows10 代码如下:(请自行修改) # !/usr/bin/env python3 # -*- coding:utf-8 -*- from scrapy import cmdline from twisted.internet impo

2016-10-10 14:23:33 scrapy crawl projectName (cannot import name '_win32stdio')

1. 保存信息如下 D:\python3\BR16>scrapy crawl BR16B -L WARNING Unhandled error in Deferred: 2016-10-10 14:19:05 [twisted] CRITICAL: Unhandled error in Deferred: Traceback (most recent call last): File "d:\python35\lib\site-packages\scrapy\commands\crawl.

运行scrapy crawl (文件名)时显示invalid syntax和no modle 'win32api'解决方案

使用pycharm爬取知乎网站的时候,在terminal端输入scarpy crawl zhihu,提示语法错误,如下: 原因是python3.7中将async设为关键字,根据错误提示,找到manhole.py文件,将文件中async参数全部更改为其它名,比如async1. 这时候运行scarpy crawl zhihu,显示如下错误: 解决方案: 原因是缺少win32,到 http://sourceforge.net/projects/pywin32/files/ 找到对应的版本进行下载,直接

(11)网页样式综合案列---灵活的电子相册 {上}

本篇学习资料讲解:       通过css对电子相册进行排版 和 侧面强调“盒子模型.标准流.浮动和定位”的重要性. 先来看看"双向联动模式"的电子相册图: {鼠标指针经过某张图片(或者某段文字)时,相应的文字(或者相应的某张图片)会以特殊样式显示} 以上部分的介绍将出现在(12)网页样式综合案列---灵活的电子相册 {下},这里只是提前感受. 1.搭建基本框架 搭建框架主要应考虑在实际页面中相册的具体结构和形式,包括照片整体排列的方法,用户可能的浏览情况,照片是否需要自动调整,等等.

GL_子模组过账至总账通过SLA修改会计方法改变科目(案列)

2014-06-02 BaoXinjian 一.摘要 通过SLA会计方法的重新定义,修改从子模组过账至总账的默认会计方法,修改会计科目逻辑,实现按不同的会计法设定不同的会计方法 二.案例 1. 定义Mapping set 2. 定义科目5个Segment对应的Account Derivation Rule 3. 定义Journal Line Defination 4. 定义Application Accounting Definitions 5. 定义Subledger Accounting D

oracle创建表案列

下面是以商品交易为案列 做的关于用户.库存.商品.交易的表格