博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
scrapy crawl itcast -o teachers.json 爬虫案列
阅读量:5159 次
发布时间:2019-06-13

本文共 1504 字,大约阅读时间需要 5 分钟。

  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

你可能感兴趣的文章
26、linux 几个C函数,nanosleep,lstat,unlink
查看>>
投标项目的脚本练习2
查看>>
201521123107 《Java程序设计》第9周学习总结
查看>>
Caroline--chochukmo
查看>>
iOS之文本属性Attributes的使用
查看>>
从.Net版本演变看String和StringBuilder性能之争
查看>>
Excel操作 Microsoft.Office.Interop.Excel.dll的使用
查看>>
解决Ubuntu下博通网卡驱动问题
查看>>
【bzoj2788】Festival
查看>>
执行gem install dryrun错误
查看>>
HTML5简单入门系列(四)
查看>>
实现字符串反转
查看>>
转载:《TypeScript 中文入门教程》 5、命名空间和模块
查看>>
苹果开发中常用英语单词
查看>>
[USACO 1.4.3]等差数列
查看>>
Shader Overview
查看>>
Reveal 配置与使用
查看>>
Java中反射的学习与理解(一)
查看>>
C语言初学 俩数相除问题
查看>>
B/S和C/S架构的区别
查看>>