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中的文本处理
Apr 11 Python
Python json 错误xx is not JSON serializable解决办法
Mar 15 Python
python实现批量按比例缩放图片效果
Mar 30 Python
Python基于jieba库进行简单分词及词云功能实现方法
Jun 16 Python
python使用tcp实现局域网内文件传输
Mar 20 Python
浅谈pandas筛选出表中满足另一个表所有条件的数据方法
Feb 08 Python
python读取并写入mat文件的方法
Jul 12 Python
selenium+python实现自动登陆QQ邮箱并发送邮件功能
Dec 13 Python
python操作yaml说明
Apr 08 Python
keras 多gpu并行运行案例
Jun 10 Python
如何使用Pytorch搭建模型
Oct 26 Python
python 读取yaml文件的两种方法(在unittest中使用)
Dec 01 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中邮箱地址正则表达式实现与详解
2012/04/24 PHP
定义php常量的详解
2013/06/09 PHP
利用ASP发送和接收XML数据的处理方法与代码
2007/11/13 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
jQuery中live()方法用法实例
2015/01/19 Javascript
js实现图片上传并正常显示
2015/12/19 Javascript
基于JavaScript实现瀑布流布局(二)
2016/01/26 Javascript
JS实现图片高斯模糊切换效果的焦点图实例
2017/01/21 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
关于JavaScript的单双引号嵌套问题
2017/08/20 Javascript
微信小程序与公众号卡券/会员打通的问题
2019/07/25 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
Vue父组件监听子组件生命周期
2020/09/03 Javascript
在js文件中引入(调用)另一个js文件的三种方法
2020/09/11 Javascript
[02:36]DOTA2混沌骑士 英雄基础教程
2013/11/26 DOTA
一个计算身份证号码校验位的Python小程序
2014/08/15 Python
python中偏函数partial用法实例分析
2015/07/08 Python
使用Python内置的模块与函数进行不同进制的数的转换
2016/03/12 Python
python将文本中的空格替换为换行的方法
2018/03/19 Python
Numpy对数组的操作:创建、变形(升降维等)、计算、取值、复制、分割、合并
2019/08/28 Python
Python如何将函数值赋给变量
2020/04/28 Python
Python闭包及装饰器运行原理解析
2020/06/17 Python
Python datetime模块使用方法小结
2020/06/18 Python
微软台湾官方网站:Microsoft台湾
2018/08/15 全球购物
个人自我鉴定范文
2013/10/04 职场文书
导游个人求职信
2014/04/25 职场文书
环保口号大全
2014/06/12 职场文书
设计师求职信
2014/07/01 职场文书
民主生活会对照检查材料(统计局)
2014/09/21 职场文书
党员教师群众路线个人整改措施
2014/10/28 职场文书
2014年乡镇团委工作总结
2014/12/18 职场文书
反邪教观后感
2015/06/11 职场文书
基督教追悼会答谢词
2015/09/29 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
MySQL 重命名表的操作方法及注意事项
2021/05/21 MySQL
pytorch 如何使用amp进行混合精度训练
2021/05/24 Python