(大数据挖掘—(七):读懂MySql数据库操作)(大数据挖掘神器——scrapy spider爬虫框架(五):解析多层网页)
通过往期的文章分享,我们了解了如何爬取想要的数据到Items中,也了解了如何操作MySQL数据库,那么我们继续完善我们的爬虫代码,把爬取的items,保存到MySQL数据库中。

scrapy构架
为了方便操作,我们自己新建一个mysqlpipelines文件夹,编写自己的pipelines.py文件,来运行保存items,在此文件夹下新建sql.py来编写我们保存数据库的sql语句。
编写sql语句
打开sql.py 编写代码,首先要连接数据库
import pymysql.cursors
# 连接数据库
connect = pymysql.Connect(host=MYSQL_HOSTS,port=MYSQL_PORT,user=MYSQL_USER,passwd=MYSQL_PASSWORD, db=MYSQL_DB,charset='utf8'
)
cursor = connect.cursor()# 获取游标
print('连接数据库OK')数据库连接ok后,我们打印一下,以便测试
新建一个类,编写sql语句
class my_sql:@classmethod #插入数据def insert_data(cls,novelname,author,category,nameid,status,num,url):...................................................................................@classmethod #判断数据是否存在def select_name(cls,novelname):................................................................................@classmethod # 更新数据def update_data(cls,author,category,nameid,status,num,url,novelname):................................................................................@classmethod # close sqldef close_sql(cls):cursor.close()connect.close()print('数据库断开连接OK')类中我们定义了插入,更新,查询的基本sql语句,最后定义一个关闭数据库的操作,中间操作数据库的详细代码请参考往期文件。
编写pipelines
from myproject.mysqlpipelines.sql import my_sql
from myproject.items import PowersItem
#插入新建的sql与item定义pipelines
class Powerspipeline(object):def process_item(self,item,spider):if isinstance(item,PowersItem):#判断item是否存在novelname=item['novelname']author = item['author']category = item['category']nameid = item['nameid']status = item['status']num = item['num']url = item['novelurl']
#以上获取爬取的数据ret=my_sql.select_name(novelname)#判断数据是否存在在数据库中if ret[0]==1:#已经存在print('已经存在,等待更新')
#若数据库中有以前的数据,更新数据库my_sql.update_data(author,category,nameid,status,num,url,novelname)passelse:
#若数据库中没有数据,保存itemprint('开始保存')my_sql.insert_data(novelname,author,category,nameid,status,num,url)else :print('no find items')return item通过以上的操作我们爬虫的所有代码就完成了,运行代码就可以从数据库中,看到保存的数据

由于我调试过一次,已经有的数据,再次运行程序时,就会更新数据库。

保存的数据
下期预告:
关于爬虫的内容还有很多,下期我们分享一下爬虫解析网页的一个利器,正则表达式
微信搜索小程序:AI人工智能工具

体验不一样 的AI工具

mysql打印语句_大数据挖掘—(八):scrapy爬取数据保存到MySql数据库相关推荐

  1. mysql打印语句_最全总结 | 聊聊 Python 数据处理全家桶(Mysql 篇)

    点击上方"AirPython",选择"加为星标" 第一时间关注 Python 技术干货! 1. 前言 在爬虫.自动化.数据分析.软件测试.Web 等日常操作中, ...

  2. yspider爬取数据导入mysql_爬虫实战四、PyCharm+Scrapy爬取数据并存入MySQL

    一.创建爬虫项目 注意:不能直接使用PyCharm创建Scrapy项目,所以需要在爬虫实战三.PyCharm搭建Scrapy开发调试环境的基础(PyCharm配置完Scrapy)之上,选中mySpid ...

  3. Python爬取数据并写入MySQL

    关于爬虫爬取数据并存入MySQL数据库(以东方财富网上的股票数据为例,网页:深南电A(000037)资金流向 _ 数据中心 _ 东方财富网) 第一步,创建数据库中的数据表 import request ...

  4. python爬取mysql数据_Python爬取数据并写入MySQL数据库的实例

    Python爬取数据并写入MySQL数据库的实例 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python爬取数据并写入MySQL数据库的实例.txt ] (友 ...

  5. python爬虫开发数据库设计入门经典_Python3实现的爬虫爬取数据并存入mysql数据库操作示例...

    本文实例讲述了Python3实现的爬虫爬取数据并存入mysql数据库操作.分享给大家供大家参考,具体如下: 爬一个电脑客户端的订单.罗总推荐,抓包工具用的是HttpAnalyzerStdV7,与chr ...

  6. python爬取新闻并归数据库_Python爬取数据并写入MySQL数据库操作示例

    Python爬取数据并写入MySQL数据库的实例 首先我们来爬取 http://html-color-codes.info/color-names/ 的一些数据. 按 F12 或 ctrl+u 审查元 ...

  7. python爬取新闻存入数据库_Python爬取数据并写入MySQL数据库的实例

    按 F12 或 ctrl+u 审查元素,结果如下: 结构很清晰简单,我们就是要爬 tr 标签里面的 style 和 tr 下几个并列的 td 标签,下面是爬取的代码: #!/usr/bin/env p ...

  8. 将labview连续数据保存到mysql数据库器

    这一篇是在之前完成Labview和mysql连接,并且进行了简单的CRUD删除的基础上来的.我们一般不会拿Labview来做学生这种数据管理系统,而是对于基本传感器数据的采集和保存,而传感器采集数据会 ...

  9. Scrapy爬取网页并保存到数据库中

    Scrapy爬取网页并保存到数据库中一.新建一个Scrapy工程.进入一个你想用来保存代码的文件夹,然后执行: T:\>scrapy startproject fjsen 会生成一堆文件夹和文件 ...

最新文章

  1. 高并发环境下如何优化Tomcat性能?看完我懂了!
  2. 中科院发布11大领域171个热点和新兴前沿!有你的研究方向吗?
  3. [转] Android系统版本号和Android API level对应表
  4. eclipse断点调试 出现Source not found
  5. 访问修饰符的个人理解-private与protected
  6. OpenStack Nova核心组件和RabbitMQ通信流程分析
  7. 报错,Error in created hook: “SyntaxError: Unexpected token o in JSON at position 1“
  8. 解读现代存储系统背后的经典算法
  9. 形式的化简与和式的展开
  10. Java Beanutils 配置
  11. AP6212认证_自适应测试
  12. FAT 文件系统代码分析--文件系统挂载篇
  13. Linux——shell脚本的基础篇(变量定义、变量种类、变量操作)
  14. 花生壳配置代理域名访问内网API服务
  15. iOS-UIGraphics将两个图片合并成一张
  16. L1-023 输出GPLT (20分) 给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按GPLTGPLT....这样的顺序输出,并忽略其它字符。当然,四种字符(不区分
  17. 小米OJ12月常规赛“数数字”题目详解与SG函数SG定理个人理解
  18. 《数据结构(c++语言版)》 清华大学邓俊辉
  19. 线程池:newCachedThreadPool、newFixedThreadPool、newSingleThreadExecutor、newScheduleThreadPool
  20. 用php开发扑克小游戏网页版,开发日记:KBEngine+Unity+php做个扑克小游戏(一)

热门文章

  1. Python入门100题 | 第031题
  2. LeetCode题组:第14题-最长公共前缀
  3. 【Mysql】_1在centos7虚拟机上完成Mysql环境部署
  4. R语言-决策树-party包
  5. VRRP协议介绍--转
  6. 【统计学习】统计学习方法概论
  7. 旷视AI「炼丹房」Brain++ 再升级 首席科学家孙剑发AI「灵魂」三问
  8. Inchat时代真的来了?上线一周突破百万用户
  9. 以人为本的机器学习:谷歌人工智能产品设计概述 By 机器之心2017年7月17日 12:13 取代了手动编程,机器学习(ML)是一种帮助计算机发现数据中的模式和关系的科学。对于创建个人的和动态的经历
  10. Visual Studio 2013开发 mini-filter driver step by step 应用层与内核通讯(8)