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兔子毒药问题实例分析
Mar 05 Python
python判断字符串是否包含子字符串的方法
Mar 24 Python
用Python中的字典来处理索引统计的方法
May 05 Python
Python Socket实现简单TCP Server/client功能示例
Aug 05 Python
深入flask之异步非堵塞实现代码示例
Jul 31 Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
Sep 13 Python
对Python+opencv将图片生成视频的实例详解
Jan 08 Python
Django如何简单快速实现PUT、DELETE方法
Jul 24 Python
使用Python实现牛顿法求极值
Feb 10 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
Apr 07 Python
python pyecharts 实现一个文件绘制多张图
May 13 Python
Django获取model中的字段名和字段的verbose_name方式
May 19 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 simplexmlElement操作xml的命名空间实现代码
2011/01/04 PHP
解析左右值无限分类的实现算法
2013/06/20 PHP
php内核解析:PHP中的哈希表
2014/01/30 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
PHP实现SMTP邮件的发送实例
2018/09/27 PHP
phpStudy vscode 搭建debug调试的教程详解
2020/07/28 PHP
ff chrome和ie下全局动态定位的异同及全局高度的取法
2014/06/30 Javascript
jquery中each遍历对象和数组示例
2014/08/05 Javascript
js实现从中间开始往上下展开网页窗口的方法
2015/03/02 Javascript
常用jQuery代码分享
2015/07/14 Javascript
实现音乐播放器的代码(html5+css3+jquery)
2015/08/04 Javascript
Jquery实现上下移动和排序代码
2016/10/17 Javascript
一个炫酷的Bootstrap导航菜单
2016/12/28 Javascript
微信小程序 实战程序简易新闻的制作
2017/01/09 Javascript
DOM事件探秘篇
2017/02/15 Javascript
解决vue里碰到 $refs 的问题的方法
2017/07/13 Javascript
fetch 使用及如何接收JS传值
2017/11/11 Javascript
vue绑定的点击事件阻止冒泡的实例
2018/02/08 Javascript
搭建element-ui的Vue前端工程操作实例
2018/02/23 Javascript
微信小程序之自定义组件的实现代码(附源码)
2018/08/02 Javascript
vue2.0移动端滑动事件vue-touch的实例代码
2018/11/27 Javascript
Python中比较特别的除法运算和幂运算介绍
2015/04/05 Python
python实现linux下使用xcopy的方法
2015/06/28 Python
python实现H2O中的随机森林算法介绍及其项目实战
2019/08/29 Python
canvas生成带二维码海报的踩坑记录
2019/09/11 HTML / CSS
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
Viking Direct爱尔兰:办公用品和家具
2019/11/21 全球购物
DataList 能否分页,请问如何实现?
2015/05/03 面试题
浅谈react路由传参的几种方式
2021/03/23 Javascript
社区工作者感言
2014/03/02 职场文书
职务聘任书范文
2014/03/29 职场文书
中国文明网向国旗敬礼活动精彩寄语2014
2014/09/27 职场文书
英语演讲开场白
2015/05/29 职场文书
员工离职证明范本
2015/06/12 职场文书
导游词之清晏园
2019/11/22 职场文书
Python Pandas解析读写 CSV 文件
2022/04/11 Python