scrapy数据存入mongodb

存入mongodb的pipelines文件是这样子写的fromopenpyxlimportWorkbookfromscrapy.confimportsettingsimportpymongoclassUsergentPipeline(object):def__init__(self):host=settings['MONGODB_HOST']port=settings['MONGODB_PORT']dbname=settings['MONGODB_DBNAME']#数据库名client=pymongo.MongoClient(host=host,port=port)tdb=client[dbname]self.port=tdb[settings['MONGODB_DOCNAME']]#表名defprocess_item(self,item,spider):agentinfo=dict(item)self.port.insert(agentinfo)returnitemsettings文件应该这样子写:MONGODB_HOST='192.168.90.9'MONGODB_PORT=270...

数据库常见面试题

转自:https://www.cnblogs.com/Java3y/p/8507258.html(原贴) /什么是存储过程?有哪些优缺点?存储过程就像我们编程语言中的函数一样,封装了我们的代码(PLSQL、T-SQL)。存储过程的优点:能够将代码封装起来保存在数据库之中让编程语言进行调用存储过程是一个预编译的代码块,执行效率比较高一个存储过程替代大量T_SQL语句,可以降低网络通信量,提高通信速率存储过程的缺点:每个数据库的存储过程语法几乎都不一样,十分难以维护(不通用)业务逻辑放在数据库上,难以迭代/三个范式是什么/第一范式(1NF):数据库表中的字段都是单一属性的,不可再分。这个单一属性由基本类型构成,包括整型、实数、字符型、逻辑型、日期型等。第二范式(2NF):数据库表中不存在非关键字段对任一候选关键字段的部分函数依赖(部分函数依赖指的是存在组合关键字中的某些字段决定非关键字段的情况),也即所有非关键字段都完全依赖于任意一组候选关键字。第三范式(3NF):在第二范式的基础上,数据表中如果不存在非关键字段对任一候选关键字段的传递函数依赖则符合第三范式。所谓传递函数依赖,指...

百万级数据库记录下的Mysql快速分页优化实例

来自:http://blog.csdn.net/zqtsx/article/details/8929625-----------------------------------------------------------------------------MySql性能到底能有多高?用了php半年多,真正如此深入的去思考这个问题还是从前天开始。有过痛苦有过绝望,到现在充满信心!MySql这个数据库绝对是适合dba级的高手去玩的,一般做一点1万篇新闻的小型系统怎么写都可以,用xx框架可以实现快速开发。可是数据量到了10万,百万至千万,他的性能还能那么高吗?一点小小的失误,可能造成整个系统的改写,甚至更本系统无法正常运行!好了,不那么多废话了。用事实说话,看例子:数据表collect(id,title,info,vtype)就这4个字段,其中title用定长,info用text,id是逐渐,vtype是tinyint,vtype是索引。这是一个基本的新闻系统的简单模型。现在往里面填充数据,填充10万篇新闻。最后collect为10万条记录,数据库表占用硬盘1.6G。OK,看下面这条sq...

Mysql数据库百万级记录查询分页优化

来源:http://www.lvtao.net/database/mysql_page_limit.html---------------------------------------------------------------------------很多的朋友在面试中会遇到这样的问题,也有很多的项目在运营一段时间后也会遇到MYSQL查询中变慢的一些瓶颈,今天这儿简单的介绍下我常用的几种查询分页的方法,我所知道的也无非就是索引、分表、子查询偏移,所以要是有什么不对或有更好的方法,欢迎大家留言讨论。效率分析关键词:explain+SQL语句一,最常见MYSQL最基本的分页方式limit:select*from`table`orderbyiddesclimit0,20在中小数据量的情况下,这样的SQL足够用了,唯一需要注意的问题就是确保使用了索引。随着数据量的增加,页数会越来越多,在数据慢慢增长的过程中,可能就会出现limit10000,20这样的情况,limit10000,20的意思扫描满足条件的10020行,扔掉前面的10000行,返回最后的20行,问题就在这里,如果是limit...

解决Mysql数据量大的时候 分页优化(使用limit)的问题

来源:http://www.wenlingnet.com/index.php/198/---------------------------------------------------------------------当一个表数据有几百万的数据时,分页的时候成了问题如select*fromtablelimit0,10这个没有问题当limit200000,10的时候数据读取就很慢,可以按照一下方法解决总数据有500万左右以下例子当时候select*fromwl_tagindexwherebyname=’f’orderbyidlimit300000,10执行时间是3.21s优化后:select*from(selectidfromwl_tagindexwherebyname='f'orderbyidlimit300000,10)aleftjoinwl_tagindexbona.id=b.id执行时间为0.11s速度明显提升这里需要说明的是我这里用到的字段是byname,id需要把这两个字段做复合索引,否则的话效果提升不明显具体参考:http://explaine...

获取股票数据数据

获取股票数据的源头主要有:数据超市、雅虎、新浪、Google、和讯、搜狐、ChinaStockWebService、东方财富客户端、证券之星、网易财经。2016年5月6日更新。根据最近频繁出现的数据超市,可以无限制获取相关数据,而不再需要使用爬虫等方式获取,这样不仅节省了极大资源,也有利于遍历数据。具体的方法不再赘述,列出来相关网站清单,开发者可自行到这些网站查询调用方法。聚合数据 https://www.juhe.cn/百度API数据 http://apistore.baidu.com/发源地 http://www.finndy.com/笔者这里推荐使用聚合数据,其次配合百度API使用即可。缺点:某些美国节假日数据会短缺;调用次数不能超过每分钟200次,否则会被警告并封锁IP地址;自定义列获取方法只能获取美股数据。优点:数据最标准化,可以获取其他国家市场数据;返回数据类型可自定义组合。方法1:http://table.finance.yahoo.com/table.csv?s=股票代码返回结果:CSV格式的文件,返回列依次是“日期、开盘价、最...

对比使用Charles和Fiddler两个工具及利用Charles抓取https数据(App)

原文:https://www.cnblogs.com/qingqing-919/p/8444816.html 对比使用Charles和Fiddler两个工具及利用Charles抓取https数据(App)实验目的:对比使用Charles和Fiddler两个工具实验对象:车易通App,易销通App实验结果:1.     接口数据呈现方式对比:(1)Charles树状结构呈现于屏幕,清晰易区分(2)Fiddler默认按时间倒叙呈现所有接口数据,不易区分个人觉得图形界面上Charles更易使用,当然可以通过过滤抓取的接口数据,这样Fiddler下也就很容易区分你要找的接口了。2.     针对车易通和易销通App抓取的接口数据全面性对比:(1)    Charles对于https无法直接获取到,可获取的呈现出来也都是乱码,需要安装ssl证书,后面会写具体设置方法。(2)    Fiddler可以直接抓取所...

jQuery写缓存之:sessionStorage的运用,配合PHP将不同tab页的数据写入后台

JS(jQuery)写缓存之:sessionStorage的运用:结果就是讲存储的DOM对象value传到后台PHP,进行foreach(){}解析JSON成二维数组示例页面:http://www.xxxx.com/index.php?ctl=project&act=add_content&id=63图片:          上1和下2     /*我的自述我的项目为何众筹+自定义章节*//*我的自述我的项目为何众筹+自定义章节*/$(function(){$('ul#tabli').bind("mousedown",function(){/*点击叠加样式*/$(this).addClass('active').siblings().removeClass('active');});js_session_mouseup();//点击this自定义章节,siblings()上下排序、删除div自动隐藏click_custom...

微信小程序 setData动态修改数据数组的值

1、问题说明  有一组数据,用来存储图片路径,动态修改图片的路径来上传图片,而小程序JS只能通过事件获取时机和setData方法修改数据来改变view。而用这样写的方式明显是错误的   2、解决办法  字符串拼接...

Oracle——数据导出与导入

原文:https://www.cnblogs.com/muhy/p/10493678.html  oracle如何将项目中的表导出后在导入自己的数据库中,这是一个完整的操作,对于数据库备份或在本地查看数据验证数据进场用到,一般情况下我都用dos黑窗口进行操作,简单记录下,毕竟好记性不如烂笔头嘛!  oracle的imp/exp就相当于oracle数据的还原与备份,利用这个功能我们可以构建两个相同的数据库,一个用于正式的,一个用户测试,一般情况下,我们常用的是将服务器的数据导出来,放在本地进行测试,以便发现问题并改正。  imp命令可以把本地.dmp文件导入到对应数据库中,不管是本地还是远程的  exp命令可以把数据从远程服务器中导入到本地,以.dmp进行保存到本地文件夹下  1、oracle如何导出表?  步骤一:打开cmd;  步骤二:语法:exp用户名/密码@服务名tables=表名file=存入本地dmp目标地址log=存入本地log目标地址 owner=要导出的用户名      导出表:exptest/test@orcltables=sys_use...

oracle——存储数据时的编码问题

原文:https://blog.csdn.net/aachangs/article/details/87820818 数据库编码问题新手入坑,第一次使用oracle数据库,还是与mysql略有不同,首先在插入数据时的SQL语法有很大不同,mysql写法:1insertintotablenamevalues(%s,%s)oracle中插入写法:1insertintotablename(ITEM_ID,CONTENT)values(:ITEM_ID,:CONTENT)问题描述:mysql和python都是utf-8编码,oracle为SIMPLIFIEDCHINESE_CHINA.ZHS16GBK,想把mysql中的一些数据导入到oracle,琢磨着写个程序来导(毕竟程序猿),于是就发生了一下错误:1UnicodeEncodeError:'ascii'codeccan'tencodecharactersinposition0-1:ordinalnotinrange(128)问题分析:引起这个问题的原因是编码格式不同,并不是由于python版本的问题引起的(当然,如果你的pytho...

oracle——数据库日志存放位置

原文:https://blog.csdn.net/kepa520/article/details/7895786原文地址:http://blog.csdn.net/a19881029/article/details/8158082  原文地址:http://blog.csdn.net/a19881029/article/details/81580821,默认情况下,oracle的日志文件记录在$ORACLE/rdbms/log目录下[plain] viewplain copy [oracle@oracle log]$ pwd  /home/oracle/oracle/product/10.2.0/db_1/rdbms/log  日志文件为(alert_<ORACLE_SID>.log):[plain] viewplain copy [oracle@oracle log]$ ll  总计 ...

plsql无法连接64位oracle数据库的解决方法(图文解说)

oracle11g下载页面:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html,找到适合自己系统的数据库,需要将file1和file2都下载下来,压缩到同一个文件夹下才能进行安装,否则安装不了。接着用免安装的plsql连接数据库试了试,发现没有连接的权限可选,如图直接输入用户名、密码和数据库名,提示如下:说明plsql是不可以直接连接64位oracle数据库,只能连接32位。既然都安装了64位oracle,可不能卸载了再装32位啊,那如何连接64位呢,就只能借助32位客户端实现了。具体方法在此与大家分享一下:1.首先下载32位的oracle客户端下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html,如图:一定下载红色标记的32-bit那个,点进去之后找到适合自己现有数据库版本的那个文件下载,我装的是oracle11.2.0.1,因此如图:右击迅雷下载...

SQL Server 批量插入数据的方法

运行下面的脚本,建立测试数据库和表。--CreateDataBasecreatedatabaseBulkTestDB;gouseBulkTestDB;go--CreateTableCreatetableBulkTestTable(Idintprimarykey,UserNamenvarchar(32),Pwdvarchar(16))go--CreateTableValuedCREATETYPEBulkUdtASTABLE(Idint,UserNamenvarchar(32),Pwdvarchar(16))ViewCode 使用最简单的Insert语句循环插入100万条数据。selectCOUNT(*)fromBulkTestTable;--deletefromBulkTestTable;DECLARE@idINT,@usernameNVARCHAR(32),@pwdvarchar(16)SET@id=1SET@username='kk'SET@pwd='123'WHILE@id<1000000--10000为你要执行插入的次数BEGININSERTINTOBulkTes...

省市区三级联动(附数据库和导入模板的做法)

代码1,php1<html>2<head>3<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>4<!--------------------------------------------------------------5--省的字段是:province6--市的字段是:city7--县的字段是:area8--------------------------------------------------------------------------->9<mce:scripttype="text/javascript"><!--10/********11*定义创建XMLHttpRequest对象的方法12*13**************************************/14varxmlHttp;//声明变量15varrequestType="";//声明初始类型为空16functioncreateXMLHttpReq...
首页上一页...405406407408409...下一页尾页