python中scrapy处理项目数据的实例分析


Posted in Python onNovember 22, 2020

在我们处理完数据后,习惯把它放在原有的位置,但是这样也会出现一定的隐患。如果因为新数据的加入或者其他种种原因,当我们再次想要启用这个文件的时候,小伙伴们就会开始着急却怎么也翻不出来,似乎也没有其他更好的搜集办法,而重新进行数据整理显然是不现实的。下面我们就一起看看python爬虫中scrapy处理项目数据的方法吧。

1、拉取项目

$ git clone https://github.com/jonbakerfish/TweetScraper.git

$ cd TweetScraper/

$ pip install -r requirements.txt #add '--user' if you are not root

$ scrapy list

$ #If the output is 'TweetScraper', then you are ready to go.

2、数据持久化

通过阅读文档,我们发现该项目有三种持久化数据的方式,第一种是保存在文件中,第二种是保存在Mongo中,第三种是保存在MySQL数据库中。因为我们抓取的数据需要做后期的分析,所以,需要将数据保存在MySQL中。

抓取到的数据默认是以Json格式保存在磁盘 ./Data/tweet/ 中的,所以,需要修改配置文件 TweetScraper/settings.py 。

ITEM_PIPELINES = {  # 'TweetScraper.pipelines.SaveToFilePipeline':100,
#'TweetScraper.pipelines.SaveToMongoPipeline':100, # replace `SaveToFilePipeline` with this to use MongoDB
  'TweetScraper.pipelines.SavetoMySQLPipeline':100, # replace `SaveToFilePipeline` with this to use MySQL
}
#settings for mysql
MYSQL_SERVER = "18.126.219.16"
MYSQL_DB   = "scraper"
MYSQL_TABLE = "tweets" # the table will be created automatically
MYSQL_USER  = "root"    # MySQL user to use (should have INSERT access granted to the Database/Table
MYSQL_PWD  = "admin123456"    # MySQL user's password

内容扩展:

scrapy.cfg是项目的配置文件

from scrapy.spider import BaseSpider
class DmozSpider(BaseSpider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
  "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
  "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
  filename = response.url.split("/")[-2]
  open(filename, 'wb').write(response.body)

到此这篇关于python中scrapy处理项目数据的实例分析的文章就介绍到这了,更多相关python爬虫中scrapy如何处理项目数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
django+xadmin+djcelery实现后台管理定时任务
Aug 14 Python
Python minidom模块用法示例【DOM写入和解析XML】
Mar 25 Python
详解Python打包分发工具setuptools
Aug 05 Python
python3.7环境下安装Anaconda的教程图解
Sep 10 Python
解决Pytorch训练过程中loss不下降的问题
Jan 02 Python
使用TensorFlow对图像进行随机旋转的实现示例
Jan 20 Python
python orm 框架中sqlalchemy用法实例详解
Feb 02 Python
Django CSRF认证的几种解决方案
Mar 03 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
Apr 19 Python
python em算法的实现
Oct 03 Python
Pycharm添加虚拟解释器报错问题解决方案
Oct 13 Python
Python内置的数据类型及使用方法
Apr 13 Python
python eventlet绿化和patch原理
Nov 21 #Python
python 实用工具状态机transitions
Nov 21 #Python
python 实现表情识别
Nov 21 #Python
python 实现性别识别
Nov 21 #Python
python遍历路径破解表单的示例
Nov 21 #Python
Python如何批量生成和调用变量
Nov 21 #Python
在终端启动Python时报错的解决方案
Nov 20 #Python
You might like
PHP.MVC的模板标签系统(三)
2006/09/05 PHP
在PHP中PDO解决中文乱码问题的一些补充
2010/09/06 PHP
PHP5.5和之前的版本empty函数的不同之处
2014/06/13 PHP
php通过排列组合实现1到9数字相加都等于20的方法
2015/08/03 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
2019/11/13 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
jquery ajax abort()的使用方法
2010/10/28 Javascript
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
2014/12/17 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
jQuery实现的兼容性浮动层示例
2016/08/02 Javascript
纯前端JavaScript实现Excel IO案例分享
2016/08/26 Javascript
jquery pagination分页插件使用详解(后台struts2)
2017/01/22 Javascript
动态加载、移除js/css文件的示例代码
2018/03/20 Javascript
如何更好的编写js async函数
2018/05/13 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
vue-cli3+typescript初体验小结
2019/02/28 Javascript
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python随机数用法实例详解【基于random模块】
2017/04/18 Python
python编程实现12306的一个小爬虫实例
2017/12/27 Python
使用python语言,比较两个字符串是否相同的实例
2018/06/29 Python
Python实现查找字符串数组最长公共前缀示例
2019/03/27 Python
使用Python检测文章抄袭及去重算法原理解析
2019/06/14 Python
python 监测内存和cpu的使用率实例
2019/11/28 Python
Python基于yaml文件配置logging日志过程解析
2020/06/23 Python
通过代码实例了解Python异常本质
2020/09/16 Python
纽约通行卡:The New York Pass(免费游览纽约90多个景点)
2017/07/29 全球购物
意大利自行车商店:Cingolani Bike Shop
2019/09/03 全球购物
面向对象编程的优势是什么
2015/12/17 面试题
爱护公共设施演讲稿
2014/09/13 职场文书
护士求职自荐信
2015/03/25 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
会议室管理制度范本
2015/08/06 职场文书
干货:我将这样书写我的演讲稿!
2019/05/09 职场文书
优秀大学生申请书
2019/06/24 职场文书
启迪人心的励志语录:脾气永远不要大于本事
2020/01/02 职场文书