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中wx将图标显示在右下角的脚本代码
Mar 08 Python
Python实现在线程里运行scrapy的方法
Apr 07 Python
老生常谈python函数参数的区别(必看篇)
May 29 Python
AI人工智能 Python实现人机对话
Nov 13 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
Feb 23 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
May 16 Python
我喜欢你 抖音表白程序python版
Apr 07 Python
Python 图像处理: 生成二维高斯分布蒙版的实例
Jul 04 Python
Djang的model创建的字段和参数详解
Jul 27 Python
pywinauto自动化操作记事本
Aug 26 Python
Python利用Pillow(PIL)库实现验证码图片的全过程
Oct 04 Python
利用python实时刷新基金估值(摸鱼小工具)
Sep 15 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中的按位与和按位或操作示例
2014/01/27 PHP
PHP实现大数(浮点数)取余的方法
2017/02/18 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
2019/04/02 PHP
JS 文字符串转换unicode编码函数
2009/05/30 Javascript
JQuery之拖拽插件实现代码
2011/04/14 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
Jquery实现网页跳转或用命令打开指定网页的解决方法
2013/07/09 Javascript
JQuery each()嵌套使用小结
2014/04/18 Javascript
jquery显示隐藏input对象
2014/07/21 Javascript
JavaScript中的值类型详细介绍
2014/12/29 Javascript
jQuery中复合属性选择器用法实例
2014/12/31 Javascript
jQuery中Ajax的load方法详解
2015/01/14 Javascript
JavaScript汉诺塔问题解决方法
2015/04/21 Javascript
JavaScript实现算术平方根算法-代码超简单
2015/09/11 Javascript
JS+CSS实现带小三角指引的滑动门效果
2015/09/22 Javascript
JSON 的正确用法探讨:Pyhong、MongoDB、JavaScript与Ajax
2016/05/15 Javascript
JS中对数组元素进行增删改移的方法总结
2016/12/15 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
Javascript实现找不同色块的游戏
2017/07/17 Javascript
VUE中的无限循环代码解析
2017/09/22 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
2019/06/04 Javascript
vue项目中锚点定位替代方式
2019/11/13 Javascript
JavaScript之Blob对象类型的具体使用方法
2019/11/29 Javascript
Javascript地址引用代码实例解析
2020/02/25 Javascript
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
Python使用BeautifulSoup库解析HTML基本使用教程
2016/03/31 Python
python笔记:mysql、redis操作方法
2017/06/28 Python
Python实现替换文件中指定内容的方法
2018/03/19 Python
python DataFrame获取行数、列数、索引及第几行第几列的值方法
2018/04/08 Python
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
法国足球商店:Footcenter
2019/07/06 全球购物
小学生读书感言
2014/02/12 职场文书
中国在我心中演讲稿
2014/09/13 职场文书
2014年图书管理员工作总结
2014/12/01 职场文书
《小摄影师》教学反思
2016/02/18 职场文书