Scrapy 爬虫实战-爬取字幕库


1.首先,创建Scrapy框架

创建工程
scrapy startproject zimuku创建爬虫程序
cd zimuku
scrapy genspider zimu zimuku.cn

如图:


我们会发现所有的框架以及模板都已经创建好了,
依次给大家看看:

zimu.py
# -*- coding: utf-8 -*-
import scrapyclass ZimuSpider(scrapy.Spider):name = 'zimu'allowed_domains = ['zimuku.cn']start_urls = ['http://zimuku.cn/']def parse(self, response):passitems.py-*- coding: utf-8 -*-# Define here the models for your scraped items
#
# See documentation in:
# https://doc.scrapy.org/en/latest/topics/items.htmlimport scrapyclass ZimukuItem(scrapy.Item):# define the fields for your item here like:# name = scrapy.Field()passpipelines.py
# -*- coding: utf-8 -*-# Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: https://doc.scrapy.org/en/latest/topics/item-pipeline.htmlclass ZimukuPipeline(object):def process_item(self, item, spider):return item

这是三个比较重要,其他的我先不一一列举了。
接下来,我们要进行分析网页了

2.网页分析

我们的目的是把这个内容保存下来,因为Scrapy框架自带一下工具,所以我们就用xpath来做内容匹配。
提取红框的内容的xpath语句为:/html/body/div[2]/div/div/div[2]/table/tbody/tr[1]/td[1]/a/b/text()

3.编写代码
(1)首先编写items.py

# -*- coding: utf-8 -*-# Define here the models for your scraped items
#
# See documentation in:
# https://doc.scrapy.org/en/latest/topics/items.htmlimport scrapyclass ZimukuItem(scrapy.Item):# define the fields for your item here like:# name = scrapy.Field()#要爬取的内容定义text = scrapy.Field()

(2)编写zimu.py

# -*- coding: utf-8 -*-
import scrapy
#需要把items中的类导进来
import zimuku.items import ZimukuItemclass ZimuSpider(scrapy.Spider):name = 'zimu'allowed_domains = ['zimuku.cn']start_urls = ['http://zimuku.cn/']def parse(self, response):''':param response: 解析网页返回的内容:return: '''name = response.xpath("/html/body/div[2]/div/div/div[2]/table/tbody/tr[1]/td[1]/a/b/text()")item = {}item['text'] = nameyield item

(3)编写piplines(处理爬到的内容的)

# -*- coding: utf-8 -*-# Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: https://doc.scrapy.org/en/latest/topics/item-pipeline.htmlclass ZimukuPipeline(object):def process_item(self, item, spider):with open("F:\\python\\1.txt", 'a') as fp:fp.write(str(item['text']))print(item['text'])

(4)settings.py

#通过配置告诉Scrapy明白是谁来处理结果
ITEM_PIPELINES={'zimuku.pipelines.ZimukuPipeline':300,}

(5)运行

#不打印日志
scrapy crawl zimu --nolog
#打印日志
scrapy crawl meiju 建议最好打印日志,不然有些错误不会发现,除了问题还不知道出在哪块

我们会发现运行成功了,我们再看看文件是否保存成功

OK!!!终于成功了。
这篇Scrapy是一步一步做的,对自己还是入门的朋友都是不错的参考。

Scrapy 爬虫实战-爬取字幕库相关推荐

  1. Python之Scrapy爬虫实战--爬取妹子图

    1.前言 反正闲着也是闲着,不如来学习啊! 2.关键代码 新建项目 不会的同学可参考我的另一篇博文,这里不再赘述:Python之Scrapy爬虫实战–新建scrapy项目 这里只讲一下几个关键点,完整 ...

  2. node 爬虫 实战 - 爬取拉勾网职位数据

    node 爬虫 实战 - 爬取拉勾网职位数据,主要想把数据用于大数据学习,到时候大数据分析可以自己分析一下职位的情况,和比较一些我现在的职位在深圳乃至全国的开发人员水平. 涉及到的技术栈:node.j ...

  3. Python爬虫实战爬取租房网站2w+数据-链家上海区域信息(超详细)

    Python爬虫实战爬取租房网站-链家上海区域信息(过程超详细) 内容可能有点啰嗦 大佬们请见谅 后面会贴代码 带火们有需求的话就用吧 正好这几天做的实验报告就直接拿过来了,我想后面应该会有人用的到吧 ...

  4. python爬虫实战---爬取大众点评评论

    python爬虫实战-爬取大众点评评论(加密字体) 1.首先打开一个店铺找到评论 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很多 ...

  5. python爬虫实战-爬取视频网站下载视频至本地(selenium)

    #python爬虫实战-爬取视频网站下载视频至本地(selenium) import requests from lxml import etree import json from selenium ...

  6. python爬虫实战-爬取微信公众号所有历史文章 - (00) 概述

    http://efonfighting.imwork.net 欢迎关注微信公众号"一番码客"获取免费下载服务与源码,并及时接收最新文章推送. 最近几年随着人工智能和大数据的兴起,p ...

  7. Python Scrapy爬虫框架爬取51job职位信息并保存至数据库

    Python Scrapy爬虫框架爬取51job职位信息并保存至数据库 -------------------------------- 版权声明:本文为CSDN博主「杠精运动员」的原创文章,遵循CC ...

  8. 九 web爬虫讲解2—urllib库爬虫—实战爬取搜狗微信公众号—抓包软件安装Fiddler4讲解...

    封装模块 #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib from urllib import request import j ...

  9. python爬虫实战--爬取猫眼专业版-实时票房

    小白级别的爬虫入门 最近闲来无事,发现了猫眼专业版-实时票房,可以看到在猫眼上映电影的票房数据,便验证自己之前学的python爬虫,爬取数据,做成.svg文件. 爬虫开始之前 我们先来看看猫眼专业版- ...

最新文章

  1. 观光旅游(Floyd)
  2. 如何利用云原生技术构建现代化应用
  3. c语言聊天程序代码,今天打的代码。基于TCP的聊天程序。
  4. Python中的列表(list)
  5. python数据格式化后导入数据库_MySQL导入格式化数据
  6. 计蒜客网站 ACM-ICPC亚洲区赛题
  7. yii验证在一个数组内_PHP实现一个轻量级容器
  8. bouncycastle JAVA实现SM3算法
  9. 信息隐藏基础算法——LSB算法(python实现)
  10. c语言打鱼晒网问题报告书,2021年C语言渔夫打鱼晒网问题.pdf
  11. 单页php搜索引擎聚合源码,单页PHP搜索引擎聚合梦在脚下搜索源码+教程
  12. 苏大计算机考研 操作系统常见易错知识点整理
  13. 合并请求格式太乱?工单内容各写各的?表单模板来帮你
  14. TCP/IP网络初识
  15. 智能家居控制系统MECOOL KA1智能音响
  16. Android Studio TV开发教程(十五) Android N及更早版本中的建议
  17. 问题条件数(Conditioning of a problem)
  18. 什么是 ELT 和 ETL?
  19. 英语不好学不会Python?我觉得你需要详读这篇文章
  20. Docker之快速搞定容器数据卷

热门文章

  1. 什么是Bom?有哪些常用的Bom属性
  2. Linux系统级I/O课后作业
  3. Spring(一)IOC容器详细笔记(算是详细吧)
  4. uni-app小程序实现视频压缩及上传
  5. gpu服务器接显示器缓慢,小科普 开启GPU加速,又一波白给的性能提升?
  6. 如何备份mysql_史上最全的MYSQL备份方法
  7. UE4在windows下打包IOS(虚拟机)
  8. 青铜5:一探究竟-从synchronized理解对象头中的锁
  9. 铂金03:一劳永逸-如何理解锁的可重入问题
  10. 戴尔SCv2000评测:入门级阵列之易用体验