python scrapy爬虫存储数据库方法带去重步骤
import pymongo
import requests
import random
import time
import pymysql db = pymongo.MongoClient()['cs']['dn']
db1 = pymysql.connect(user='root',password='root',db='cs',charset='utf8')
cursor = db1.cursor() class CsdnPipeline(object):
def __init__(self):
self.set = set()
def process_item(self, item, spider):
if item not in self.set:
title = item['title']
content_text = item['content_text']
create_time_datetime = item['create_time_datetime']
nickName = item['nickName']
read_count = item['read_count']
content_img = item['content_img']
keyword = item['keyword']
if len(content_img)>0:
path = []
for img in content_img:
img_name = 'F:\\34\\tu\\'+str(time.time()).split('.')[1]+str(random.randrange(1,9999999999999999999999999))+'.jpg'
img_source = requests.get(img).content
op = open(img_name,'wb')
op.write(img_source)
op.close()
path.append(img_name)
item['content_img'] = path else:
item['content_img'] = '暂无图片'
db.insert(dict(item))
import json
data = json.dumps(dict(item))
sql = "insert into dn1(`data`) VALUES ('{}')".format(data)
cursor.execute(sql)
db1.commit()
self.set.add(item)
return item
else:
print('已经存在')
return item
python scrapy爬虫存储数据库方法带去重步骤的更多相关文章
- python - scrapy 爬虫框架(创建, 持久化, 去重, 深度, cookie)
		## scrapy 依赖 twisted - twisted 是一个基于事件循环的 异步非阻塞 框架/模块 ## 项目的创建 1. 创建 project scrapy startproject ... 
- Python Scrapy 爬虫框架实例(一)
		之前有介绍 scrapy 的相关知识,但是没有介绍相关实例,在这里做个小例,供大家参考学习. 注:后续不强调python 版本,默认即为python3.x. 爬取目标 这里简单找一个图片网站,获取图片 ... 
- Python Scrapy 爬虫框架实例
		之前有介绍 scrapy 的相关知识,但是没有介绍相关实例,在这里做个小例,供大家参考学习. 注:后续不强调python 版本,默认即为python3.x. 爬取目标 这里简单找一个图片网站,获取图片 ... 
- Python Scrapy爬虫框架之初次使用
		此篇博客为本人对小甲鱼的课程的总结. 关于Scrapy的安装网上都有方法,这里便不再叙述. 使用Scrapy抓取一个网站一共需要四个步骤: 0.创建一个Scrapy项目: 1.定义Item容器: 2. ... 
- 如何在vscode中调试python scrapy爬虫
		本文环境为 Win10 64bit+VS Code+Python3.6,步骤简单罗列下,此方法可以不用单独建一个Py入口来调用命令行 安装Python,从官网下载,过程略,这里主要注意将python目 ... 
- 最全数据分析资料汇总(含python、爬虫、数据库、大数据、tableau、统计学等)
		一.Python基础 Python简明教程(Python3) Python3.7.4官方中文文档 Python标准库中文版 廖雪峰 Python 3 中文教程 Python 3.3 官方教程中文版 P ... 
- python中requests库get方法带参数请求
		起因是想爬五等分的花嫁的漫画.这是其中的一个坑 先上代码 data={ 'cid':567464, , 'key':'', 'language':1, 'gtk':6, '_cid':567464, ... 
- python scrapy爬虫数据库去重方法
		1. scrapy对request的URL去重 yield scrapy.Request(url, self.parse, dont_filter=False) 注意这个参数:dont_filter= ... 
- Python scrapy爬虫数据保存到MySQL数据库
		除将爬取到的信息写入文件中之外,程序也可通过修改 Pipeline 文件将数据保存到数据库中.为了使用数据库来保存爬取到的信息,在 MySQL 的 python 数据库中执行如下 SQL 语句来创建 ... 
随机推荐
- 自动化(脚本)安装httpd服务
			思路: 1.检查传递的参数,httpd源码文件 2.检查执行脚本的用户是否为root 3.检查rpm是否安装过httpd,若安装过,则卸载 4.安装编译所需的工具 5.从网上下载httpd源码 6.配 ... 
- bzoj3876: [Ahoi2014&Jsoi2014]支线剧情
			题意:给一幅图,从1开始,每条边有边权最少走一遍,可以在任意点退出,问最小花费 题解:上下界费用流,每个边都流一遍,然后为了保证流量平衡,新建源点汇点,跑费用流把流量平衡 /************* ... 
- [Codeforces Round #340 (Div. 2)]
			[Codeforces Round #340 (Div. 2)] vp了一场cf..(打不了深夜的场啊!!) A.Elephant 水题,直接贪心,能用5步走5步. B.Chocolate 乘法原理计 ... 
- Django之REST framework源码分析
			前言: Django REST framework,是1个基于Django搭建 REST风格API的框架: 1.什么是API呢? API就是访问即可获取数据的url地址,下面是一个最简单的 Djang ... 
- python操作文件(增、删、改、查)
			内容 global log 127.0.0.1 local2 daemon maxconn 256 log 127.0.0.1 local2 info defaults log global mode ... 
- 推送证书p12文件转换成pem的命令
			openssl pkcs12 -in 你的p12文件名称.p12 -out 需要生成的pem文件名称.pem -nodes 
- IDA 逆向工程 反汇编使用
			IDA pro 7.0版本 from:freebuf 用到的工具有IDA pro 7.0 ,被反汇编的是百度云(BaiduNetdisk_5.6.1.2.exe). 首先,IDA pro的长相如下: ... 
- swap分区不足ubuntu休眠
			安装uswsusp Ubuntu gnu/linux只需 代码: sudo aptitude install uswsusp Arch gnu/linux系统 代码: sudo pacman -S u ... 
- java集合框架图
- Unity运行错误代码处理
			1.Unity在运行时出现如图错误,但不影响运行效果展示. 2.错误原因:代码不规范. 3.检查代码,查看变量是否定义正确. 
