redis使用日志(二) 数据存储到redis
一段简短的代码,来展示如何把爬取内容写到redis里面:
#! /usr/bin/env python
# -*- coding=utf-8 -*-
import requests
import json
import re
import sys
import redis
reload(sys)
sys.setdefaultencoding("utf-8")
classinfo = []
f = open('info.txt','w')
num = 0
class RedisTT(object):
def __init__(self):
self.keyName = 'DouBan'
self.host = 'localhost'
self.port = ''
self.re = redis.Redis(host=self.host,port=self.port)
def insertRedis(self,jsonStr):#存入到redis中
self.re.lpush(self.keyName,jsonStr)
class Douban(object):
def write(self,htm):
titl = re.findall('data-tit(.*?)data-enough',htm.text,re.S)
for each in titl:
#print each
info = {}
#print each
info['title'] = re.search('le="(.*?)"',each,re.S).group(1)
info['year'] = re.search('data-release="(.*?)" data',each,re.S).group(1)
info['Rating']= re.findall('data-rate="(.*?)" data-star',each,re.S)[0]
info['time'] = re.findall('data-duration="(.*?)" data-re',each,re.S)[0]
info['reg'] = re.findall('data-region="(.*?)" data-dir',each,re.S)[0]
info['act'] = re.findall('data-actors="(.*?)" data-in',each,re.S)[0]
RedisTT().insertRedis(json.dumps(info))
def getremen(self):
url = 'http://movie.douban.com/'
html = requests.get(url)
html.encoding = 'utf-8'
# print html.text
self.write(html)
if __name__ == "__main__":
Douban().getremen()
结果如下:

redis使用日志(二) 数据存储到redis的更多相关文章
- Spring Boot 揭秘与实战(二) 数据存储篇 - Redis
文章目录 1. 环境依赖 2. 数据源 2.1. 方案一 使用 Spring Boot 默认配置 2.2. 方案二 手动创建 3. 使用 redisTemplate 操作4. 总结 3.1. 工具类 ...
- Python 抓取数据存储到Redis中
redis是一个key-value存储结构.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...
- Base-Android快速开发框架(二)--数据存储之SharedPreferences
对于App开发者,抽象来说,其实就是将数据以各种各样的方式展示在用户面前以及采集用户的数据.采集用户的数据包括用户的输入.触摸.传感器等,展示的数据通过网络来源于各业务系统,以及用户的 输入数据.在这 ...
- flum到kafka 收集数据 存储到redis 案例 (ip.txt)
ip.scala package ip import org.apache.kafka.clients.consumer.ConsumerRecord import org.apache.kafka. ...
- 分布式缓存技术redis学习(二)——详细讲解redis数据结构(内存模型)以及常用命令
Redis数据类型 与Memcached仅支持简单的key-value结构的数据记录不同,Redis支持的数据类型要丰富得多,常用的数据类型主要有五种:String.List.Hash.Set和Sor ...
- 分布式缓存技术redis系列(二)——详细讲解redis数据结构(内存模型)以及常用命令
https://www.cnblogs.com/hjwublog/p/5639990.html
- Redis数据存储优化机制(转)
原文:Redis学习笔记4--Redis数据存储优化机制 1.zipmap优化hash: 前面谈到将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象.省内存的原因是新建一个h ...
- redis学习(二) redis数据结构介绍以及常用命令
redis数据结构介绍 我们已经知道redis是一个基于key-value数据存储的数据结构数据库,这里的key指的是string类型,而对应的value则可以是多样的数据结构.其中包括下面五种类型: ...
- 【Redis】解析Redis和Java传递数据
在Java中使用Redis之前需要导入 jedis.jar 包,由于Redis是基于key-value进行数据存储,java中的数据存储到Redis中有许多方式,这里笔者介绍采用JSON字符串和对象序 ...
随机推荐
- 【BZOJ2013】【JSOI2008】球形空间产生器
看chty代码 原题: BZOJ挂了--等好了补上题面 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球面上n+1个点的坐标,你需要以最快的速度确定这 ...
- linux中的find命令——查找文件名
1.在某目录下查找名为“elm.cc”的文件 find /home/lijiajia/ -name elm.cc 2.查找文件名中包含某字符(如"elm")的文件 find /ho ...
- Java 控制反转和依赖注入模式【翻译】【整理】
Inversion of Control Containers and the Dependency Injection pattern --Martin Fowler 本文内容 Component ...
- PHP递归题目
$arr = [ 'a' => 'A', 'b' => 'B', 'c' => [ 'd'=> 'D', 'e'=>[ 'f'=>'F', 'g'=>['h' ...
- FS拓展设置
一.集群测试说明: 1.该测试的主要目的是:让两个注册在不同FS Server上的账号彼此双方通话. 2.测试工具:eyeBeam .LinPhone 3.FS架构图: 上图中两台FS的分机状况如下: ...
- NGUI Font
---------------------------------------------------------------------------------------------------- ...
- C#配置升级
void ConvertProject() { List<BaseProjectConverter> convertors = new List<BaseProjectConvert ...
- 在AndroidStudio中引入SlidingMenu第三方库的步骤
步骤一: 在GitHub上下载库文件 步骤二: 在需要引入库的项目中导入一个Moudle,如下图: 步骤三: 将下载后的Slidingme ...
- spring注解方式在一个普通的java类里面注入dao
spring注解方式在一个普通的java类里面注入dao @Repositorypublic class BaseDaoImpl implements BaseDao {这是我的dao如果在servi ...
- ECS修改默认端口22及限制root登录
首先要创建一个用户,用系统默认的www用户也可以(这里不介绍如何创建用户) 接下来要修改www的密码: passwd www 执行此命令后会让你输入两次密码.这样就设置好了. 然后进入: vi /et ...