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实现队列的方法
May 26 Python
Python 记录日志的灵活性和可配置性介绍
Feb 27 Python
PyQt5每天必学之布局管理
Apr 19 Python
python使用xlrd和xlwt读写Excel文件的实例代码
Sep 05 Python
python日志logging模块使用方法分析
May 23 Python
Django 创建/删除用户的示例代码
Jul 24 Python
Python FtpLib模块应用操作详解
Dec 12 Python
Pytest框架之fixture的详细使用教程
Apr 07 Python
基于python实现上传文件到OSS代码实例
May 09 Python
基于Keras的格式化输出Loss实现方式
Jun 17 Python
Python Pandas常用函数方法总结
Jun 15 Python
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
May 04 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
环境会对咖啡种植有什么影响
2021/03/03 咖啡文化
54个提高PHP程序运行效率的方法
2015/07/19 PHP
yii使用bootstrap分页样式的实例
2017/01/17 PHP
jquery ajax提交整个表单元素的快捷办法
2013/03/27 Javascript
jquery()函数的三种语法介绍
2013/10/09 Javascript
jQuery 滑动方法slideDown向下滑动元素
2014/01/16 Javascript
js实现鼠标滚轮控制图片缩放效果的方法
2015/02/20 Javascript
JS实现可自定义大小,可双击关闭的弹出层效果
2015/10/16 Javascript
跟我学习javascript的浮点数精度
2015/11/16 Javascript
AngularJS通过ng-route实现基本的路由功能实例详解
2016/12/13 Javascript
80%应聘者都不及格的JS面试题
2017/03/21 Javascript
Vue中如何实现proxy代理
2018/04/20 Javascript
JS操作字符串转数字的常见方法示例
2019/10/29 Javascript
详解ECMAScript2019/ES10新属性
2019/12/06 Javascript
Vue+abp微信扫码登录的实现代码示例
2020/01/06 Javascript
uniapp,微信小程序中使用 MQTT的问题
2020/07/11 Javascript
Vue(定时器)解决mounted不能获取到data中的数据问题
2020/07/30 Javascript
python实现bucket排序算法实例分析
2015/05/04 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
python构建深度神经网络(DNN)
2018/03/10 Python
pycharm重置设置,恢复默认设置的方法
2018/10/22 Python
Python3爬虫使用Fidder实现APP爬取示例
2018/11/27 Python
python 爬取疫情数据的源码
2020/02/09 Python
python目标检测给图画框,bbox画到图上并保存案例
2020/03/10 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
Vero Moda西班牙官方购物网站:丹麦BESTSELLER旗下知名女装品牌
2018/04/27 全球购物
杭州龙健科技笔试题.net部分笔试题
2016/01/24 面试题
车队司机个人自我鉴定
2014/04/17 职场文书
创建青年文明号材料
2014/05/09 职场文书
青安岗事迹材料
2014/05/14 职场文书
销售顾问工作计划书
2014/09/15 职场文书
故意杀人案辩护词
2015/05/21 职场文书
公务员岗前培训心得体会
2016/01/08 职场文书
python实现大文本文件分割成多个小文件
2021/04/20 Python
Vue ECharts实现机舱座位选择展示功能
2022/05/15 Vue.js
一文搞懂PHP中的抽象类和接口
2022/05/25 PHP