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 相关文章推荐
零基础写python爬虫之神器正则表达式
Nov 06 Python
python通过pil模块获得图片exif信息的方法
Mar 16 Python
Python使用修饰器执行函数的参数检查功能示例
Sep 26 Python
详解python OpenCV学习笔记之直方图均衡化
Feb 08 Python
对python的文件内注释 help注释方法
May 23 Python
pytorch训练imagenet分类的方法
Jul 27 Python
Python3.4学习笔记之 idle 清屏扩展插件用法分析
Mar 01 Python
解决安装pyqt5之后无法打开spyder的问题
Dec 13 Python
Python日志logging模块功能与用法详解
Apr 09 Python
使用python批量修改XML文件中图像的depth值
Jul 22 Python
python matplotlib绘制三维图的示例
Sep 24 Python
python基于win32api实现键盘输入
Dec 09 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
收音机玩机评测 406 篇视频合集
2020/03/11 无线电
检测png图片是否完整的php代码
2010/09/06 PHP
php不使用插件导出excel的简单方法
2014/03/04 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
Laravel框架搜索分页功能示例
2019/02/01 PHP
thinkphp整合系列之极验滑动验证码geetest功能
2019/06/18 PHP
PHP使用POP3读取邮箱接收邮件的示例代码
2020/07/08 PHP
超级强大的表单验证
2006/06/26 Javascript
js的touch事件的实际引用
2014/10/13 Javascript
基于insertBefore制作简单的循环插空效果
2015/09/21 Javascript
js操作XML文件的实现方法兼容IE与FireFox
2016/06/25 Javascript
浅析JS中的 map, filter, some, every, forEach, for in, for of 用法总结
2017/03/29 Javascript
Angular 2父子组件之间共享服务通信的实现
2017/07/04 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
JavaScript实现省市联动过程中bug的解决方法
2017/12/04 Javascript
axios发送post请求,提交图片类型表单数据方法
2018/03/16 Javascript
详解vue移动端项目代码拆分记录
2019/03/15 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
JavaScript的垃圾回收机制与内存管理
2020/08/06 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
2020/08/26 Javascript
openlayers实现地图弹窗
2020/09/25 Javascript
[03:57]《不朽》——2015DOTA2国际邀请赛—中国军团出征主题曲MV
2015/07/15 DOTA
Python 连连看连接算法
2008/11/22 Python
使用python3实现操作串口详解
2019/01/01 Python
Pandas+Matplotlib 箱式图异常值分析示例
2019/12/09 Python
详细分析Python可变对象和不可变对象
2020/07/09 Python
python3爬虫中多线程的优势总结
2020/11/24 Python
体育教师工作总结的自我评价
2013/10/10 职场文书
遗嘱公证书标准样本
2014/04/08 职场文书
质量承诺书格式
2014/05/20 职场文书
交通运输局四风问题对照检查材料思想汇报
2014/10/09 职场文书
师德承诺书
2015/01/20 职场文书
承诺保证书格式
2015/02/28 职场文书
少年犯观后感
2015/06/11 职场文书
七年级生物教学反思
2016/02/20 职场文书
2016年教师党员创先争优承诺书
2016/03/24 职场文书