概述

利用Scrapy爬取豆瓣电影Top250排行榜电影信息,并保存到MongoDB数据库中

使用pymongo库操作MOngodb数据库

没有进行数据清洗

源码

items.py

class Douban250Item(scrapy.Item):"""豆瓣电影Top250爬虫 Item"""# 电影名称title=scrapy.Field()# 信息info=scrapy.Field()# 评分star=scrapy.Field()# 评价人数num=scrapy.Field()# 一句话点评quote=scrapy.Field()

spider/douban250_spider.py

# !/usr/bin/env python
# -*- coding:utf-8 -*-import scrapy
from myscrapy.items import Douban250Itemclass Douban250Spider(scrapy.Spider):"""豆瓣电影Top250爬虫Spider"""name = 'douban250'allowed_domains=['movie.douban.com',]base_url='https://movie.douban.com/top250?start='offset=0start_urls=[base_url+str(offset),]def parse(self, response):# 包含本页所有电影的SelectorListmovies=response.xpath('//ol/li/div[@class="item"]')for movie in movies:title=movie.xpath('./div[@class="info"]//a/span[1]/text()')[0].extract()info=movie.xpath('./div[@class="info"]//p[1]')[0].extract()star=movie.xpath('.//span[@class="rating_num"]/text()')[0].extract()num=movie.xpath('.//div[@class="star"]/span[last()]/text()')[0].extract()quote=movie.xpath('./div[@class="info"]//p[2]')[0].extract()item=Douban250Item()item['title'] = titleitem['info'] = infoitem['star'] = staritem['num'] = numitem['quote'] = quoteyield itemif self.offset<225:self.offset+=25yield scrapy.Request(url=self.base_url+str(self.offset),callback=self.parse)

pipelines.py

import pymongo
class Douban250Pipeline(object):"""豆瓣电影Top250爬虫Item Pipeline"""def __init__(self):# 连接数据库服务器mongo_client=pymongo.MongoClient(host='127.0.0.1',port=27017)# 指定数据库mydb=mongo_client['mydb']# 指定集合self.douban250_col=mydb['douban250']def process_item(self,item,spider):# 插入数据self.douban250_col.insert(dict(item))return itemdef close_spider(self,spider):pass

settings.py

ITEM_PIPELINES = {'myscrapy.pipelines.Douban250Pipeline': 300,
}

运行

Scrapy框架学习 - 爬取豆瓣电影排行榜TOP250所有电影信息并保存到MongoDB数据库中相关推荐

  1. Scrapy框架学习 - 爬取Boss直聘网Python职位信息

    分析 使用CrawlSpider结合LinkExtractor和Rule爬取网页信息 LinkExtractor用于定义链接提取规则,一般使用allow参数即可 LinkExtractor(allow ...

  2. Scrapy 框架:爬取豆瓣Top 250

    使用Scrapy爬取豆瓣电影Top250 鲁迅说,豆瓣排行榜这么多,不爬一爬可惜了. 第一步:安装Scrapy 安装命令: pip3 install scrapy win用户一般来说第一次都不会太顺利 ...

  3. 爬取虎扑nba球员得分榜信息并存储至MongoDB数据库

    Main.py: import re import requests from requests.exceptions import RequestException from config impo ...

  4. 利用xpath爬取链家租房房源数据并利用pandas保存到Excel文件中

    我们的需求是利用xpath爬取链家租房房源数据,并将数据通过pandas保存到Excel文件当中 下面我们看一下链家官网的房源信息(以北京为例) 如图所示,我们通过筛选得到北京租房信息 那么我们需要将 ...

  5. python爬虫爬取虎扑湖人论坛专区帖子数据,并存入MongoDB数据库中

    今天就带大家从头到尾一步一步带着大家爬取虎扑论坛帖子的数据,里面涉及到的一些知识,我会给出学习的连接,大家可以自行去学习查看. 前期准备 首先我们打开虎扑NBA论坛,我选择的是湖人专区(小湖迷一个). ...

  6. Pandas的学习(读取mongodb数据库集合到DataFrame,将DataFrame类型数据保存到mongodb数据库中)

    1.读取mongodb数据库集合到DataFrame import pymongo import pandas as pdclient = pymongo.MongoClient("数据库连 ...

  7. 使用python3.7中的scrapy框架,爬取起点小说

    这几天在学习scrapy框架,感觉有所收获,便尝试使用scrapy框架来爬取一些数据,对自己阶段性学习进行一个小小的总结 本次爬取的目标数据是起点中文网中的免费作品部分,如下图: 本次一共爬取了100 ...

  8. 使用Scrapy框架,爬取b站番剧信息。

    使用Scrapy框架,爬取b站番剧信息. 感觉好久没写爬虫的,今天看了在b站浏览了一会儿,发现b站有很多东西可以爬取的,比如首页的排行榜,番剧感觉很容易找到数据来源的,所以就拿主页的番剧来练练手的. ...

  9. 手把手教你使用scrapy框架来爬取北京新发地价格行情(理论篇)

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 博观而约取,厚积而薄发. 大家好! ...

最新文章

  1. 再谈编程范式-程序语言背后的思想
  2. DVWA-暴力破解-对‘g0tmi1k’文章的学习笔记
  3. 几种Lucene.Net打开IndexReader的方式
  4. 阮一峰react demo代码研究的学习笔记 - demo4 debug - create element and Render
  5. php study是什么,phpstudy有什么用
  6. 手机锁屏js倒计时停止问题解决办法探索
  7. (Object detection)目标检测从入门到精通——第二部分
  8. 这款国产神器,我爱了
  9. 机器学习算法——神经网络4(RBF神经网络)
  10. 《远见》的读后感作文1000字范文
  11. mysql严格区分大小写吗_MySQL是否区分大小写
  12. 基于API的ArrayList集合之学习记录
  13. 【机房重构】-UNL图回顾
  14. 推荐2022年有微信小程序毕业设计需求的70多个作品
  15. EAS 从查询分析器导出表数据的插入语句
  16. ASP.NET Core 快速入门
  17. 2023年2月系统集成项目管理工程师认证【报名入口】
  18. android高仿ios控制中心,高仿ios控制中心安卓版
  19. 《信息简史》读书笔记 1
  20. 怎么申请自己的百度百科词条,在百度发布人物简介的方法

热门文章

  1. 如何实现线上收款 到不同账户支付宝账户
  2. android 模拟器黑屏 Cordova多平台方案
  3. vmware 解决二进制转换与此平台上的长模式不兼容
  4. C++环境下部署深度学习模型方案
  5. webm转mp4 python实现
  6. 推荐你一款国产的倾斜摄影实景三维模型浏览器
  7. Station M2极客主机
  8. java程序求内切圆_JAVA求正方形边长,圆内切正方形,圆的直径为8,求正方形边长和面积!...
  9. webp格式如何转成png?
  10. ICCV 2021 Oral | 金字塔视觉Transformer(PVT):用于密集预测的多功能backbone