import pymysql
from scrapy.exceptions import DropItem
import time class ErshouchePipeline(object):
def __init__(self):
self.conn = pymysql.connect(
host = '127.0.0.1',
port = 3306,
user = 'root',
passwd = 'mlpythonlmoi',
db = 'ershouche',
charset = 'utf8'
)
self.cusor = self.conn.cursor(cursor=pymysql.cursors.DictCursor)
sql1 = "select 路由网址 from 二手车之家"
result = self.cusor.execute(sql1)#读取已经爬取的数据url
# print(result)
temp = self.cusor.fetchall()#返回查询到的所有记录
print('返回查询得到的记录:',temp)
self.url_list = []
for i in temp:
self.url_list.append(i['路由网址'])
print('存在的:',self.url_list) def process_item(self, item, spider):
if item['car_url'] not in self.url_list:
sql = "insert into 二手车之家 values(Null,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
lst = (item['city'],item['trademark'],item['model'],item['colour'],item['price'],item['purpose'],
item['vehicle_condition'],item['drive_mode'],item['Truck_kilometer'],item['car_license'],
item['Stop_displacemen'],item['year_jian_due'],item['insurance_policy_matures'],item['assurance_due'],
item['emission_standard'],item['guohu_number'],item['maintenance'],item['car_url'])
self.cusor.execute(sql,lst)
self.conn.commit()
else:
raise DropItem('该item数据库中已经存在!')
return item def close_spider(self, spider):
self.cusor.close()
self.conn.close()#关闭连接
print("操作结束!")
print('结束时间:' + time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()))

scrapy管道MySQL简记的更多相关文章

  1. scrapy 管道里面使用mysql插入数据库

    # -*- coding: utf-8 -*- # Define your item pipelines here # # Don't forget to add your pipeline to t ...

  2. scrapy 管道里面使用mysql插入数据库 python操作mysql

    # -*- coding: utf-8 -*- # Define your item pipelines here # # Don't forget to add your pipeline to t ...

  3. scrapy连接MySQL

    Scrapy中连接MySQL所需要做的工作如下: 1.settings中需要设置的部分 # 启动管道组件 ITEM_PIPELINES = { 'QianChengWuYu.mongoDBPiplel ...

  4. scrapy存储mysql

    scrapy 数据存储mysql   #spider.pyfrom scrapy.linkextractors import LinkExtractor from scrapy.spiders imp ...

  5. scrapy 实现mysql 数据保存

    开始用scrapy 爬取数据的时候  开始用同步操作始终会报1064  的错误  因为 mysql 语法和导入的字段不兼容 尝试了  n  次之后  开始用  异步爬取  虽然一路报错 但是还是能把数 ...

  6. scrapy操作mysql/批量下载图片

    1.操作mysql items.py meiju.py 3.piplines.py 4.settings.py -------------------------------------------- ...

  7. scrapy框架初识

    一.scrapy简介 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具 ...

  8. scrapy爬取猫眼电影排行榜

    做爬虫的人,一定离不开的一个框架就是scrapy框架,写小项目的时候可以用requests模块就能得到结果,但是当爬取的数据量大的时候,就一定要用到框架. 下面先练练手,用scrapy写一个爬取猫眼电 ...

  9. scrapy wiki资料汇总

    See also: Scrapy homepage, Official documentation, Scrapy snippets on Snipplr Getting started If you ...

随机推荐

  1. Redirect local emails to a remote email account

    My previous post is a guide for setting up exim4, an SMTP mail server, to use Gmail as a smarthost. ...

  2. Shell 编程备忘

    变量使用 1. 定义变量: a=1 变量名=值 等号两端不能有空格 2. 变量值为数字或字符串,字符串 "this is adeom" 'this is a demo',双引号中可 ...

  3. c#之反射(Reflection)

    一.反射是什么 反射就是.Net FrameWork框架为我们提供的一个帮助类库,它可以读取我们通过编译后生成的dll和exe文件里面metadate的信息. 反射可以动态的加载dll和exe文件,动 ...

  4. C#调用C++函数

    一.新建C++项目 1.在VS2012中新建->项目->模版->其他语言->Win32->Win32项目->下一步->选DLL,导出符号. 2.在XX.h项目 ...

  5. asp.net session 保存实体类对象

    存:User user=new User();session["USER"]=user; 取:User u= (User ) session["USER"];

  6. JQuery学习---JQuery基础知识

    JQuery介绍: [官网]http://jquery.com [参考API]http://jquery.cuishifeng.cn/ JQuery的低版本支持IE低版本,JQuery的2版本不太支持 ...

  7. Linux 下Discuz论坛的搭建

    Discuz论坛的搭建[基于LNMP环境搭建成功后] ##创建BBS数据库在本地/远程服务器 mysql -uroot -proot create database bbs; show databas ...

  8. ecshop hash登录 + wordpress mysql盲注字段

    delete_cart_goods.php  post  id=a * sq_xfkjbd 暴库and(select 1 from(select count(*),concat((select (se ...

  9. 英语的各种 n. adj. vt. vi. 等词性解释

    n. 名词 v. 动词(既可作及物动词,也可作不及物动词的就用这个表示) pron. 代词 adj. 形容词(后接名词) adv. 副词(修饰动词.形容词或其他副词) abbr. (这是一个缩写符号) ...

  10. Linux的ssh的known_host文件

    在平时工作中,有时候需要SSH登陆到别的Linux主机上去,但有时候SSH登陆会被禁止,并弹出如下类似提示: WARNING: REMOTE HOST IDENTIFICATION HAS CHANG ...