zoukankan      html  css  js  c++  java
  • python爬虫之MongoDB测试环境安装

     

    .   下载

    从http://www.mongodb.org/downloads地址中下载:mongodb-linux-x86_64-2.4.11.tar

    安装

    1>设置mongoDB目录
    [root@vm13 home]#cd /home/apps      
    附:centOS下创建目录命令  [root@vm13 home]#mkdir -p /home/apps

    2>将文件mongodb-linux-x86_64-2.4.11.tar上传至/home/apps目录

    3>解压缩文件
    [root@vm13 apps]#tar xzf mongodb-linux-x86_64-2.4.11.tar
    文件夹重命名
    [root@vm13 apps]#mv mongodb-linux-x86_64-2.4.11 mongodb

    4>创建目录与文件
    [root@vm13 apps]# mkdir -p  mongodb/data/db
    [root@vm13 apps]# mkdir -p  mongodb/logs
    [root@vm13 apps]# touch  mongodb/logs/mongodb.logs

    5>启动服务
    [root@vm13 apps]#./mongodb/bin/mongod -dbpath=/home/apps/mongodb/data/db -logpath=/home/apps/mongodb/logs/mongodb.logs
    all output going to: /home/apps/mongodb/logs/mongodb.logs

    6>将mongoDB服务加入随机启动
    [root@vm13 apps]#vi /etc/rc.local
    使用vi编辑器打开配置文件,并在其中加入下面一行代码
    [root@vm13 apps]#/home/apps/mongodb/bin/mongod --dbpath /home/apps/mongodb/data/db --port 27017 --logpath /home/apps/mongodb/logs/mongodb.logs --logappend


    7>连接mongoDB(注意不要关闭之前的界面,需要重新打开一个窗口连接)
    [root@vm13 apps]# ./home/apps/mongodb/bin/mongo DBName
    MongoDB shell version: 2.4.11
    connecting to: DBName
    Welcome to the MongoDB shell.
    For interactive help, type "help".
    For more comprehensive documentation, see
        http://docs.mongodb.org/
    Questions? Try the support group
        http://groups.google.com/group/mongodb-user

    出现以上界面表示连接成功。

    三.  局域网连接mongoDB

    按照上面的操作,mongoDB的在Linux下安装已完成,本地连接mongoDB也已成功。这时我们就要考虑到另外一个问题了,局域网如何来连接mongoDB呢?局域网中windows机器如何来连接Linux机器中的mongoDB呢?其实做法一样很简单:

    [root@vm13 apps]#./mongodb/bin/mongo 192.168.5.100/DBName

    不过此处就需要注意了,我们需要在centOS上打开mongoDB的端口号,接下来讲讲如何在centOS上打开指定端口。先来查看下此端口是否被占用:

    [root@vm13 apps]#netstat -anp |grep 27017

    如若此端口未使用,再来打开配置文件[root@vm13 apps]# vi  /etc/sysconfig/iptables,在该文件中添加如下内容:

    # Firewall configuration written by system-config-securitylevel
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    :RH-Firewall-1-INPUT - [0:0]

    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT
    COMMIT

    然后重启服务.

    [root@vm13 apps]#service iptables restart

     

    此时,你已可以开始通过局域网来访问centOS上部署的mongoDB.

    在本地浏览器中输入http://192.168.5.100:27017/,若出现以下:

    You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
    表示连接成功。

    四.  安装过程中遇到的问题

    1. Error: couldn't connect to server 127.0.0.1:27017 src/mongo/shell/mongo.js:91

    三、解决办法:执行以下语句

    [root@vm13 mongodb]# ./bin/mongod -dbpath=data/db

     

    2.重启防火墙时报错:

     

    解决方法:在最后添加COMMIT.

     

     

    五、    语法使用

    client = pymongo.MongoClient("192.168.1.252",27017)

    #content代表是ceshi这个数据库,没有就新建
    content = client["ceshi"]

    #wb_data变量的值content_links是在测试这个库里面的表名
    wb_data = content["content_links"]

     

    1、  写入数据库。

    #data指的是爬虫程序已经生成的一个一个字典类型的数据

     

    wb_data.insert_one(data)
    2、  读取数据库。
    wb_data.find是查找所有数据,这里面可以筛选,例如:查找name=张三
    for data in wb_data.find({‘name’:’zhangsan’}):
         print(data)
    例如二:查找年龄小于22岁:
    for data in wb_data.find({‘age’:{‘$lt’:‘22’}}):
         print(data)
    例如三:查找这个表的所有数据:
    for data in wb_data.find():
         print(data)

     

    $lt=小于

    $lte=小于等于

    $gt=大于

    $gte=大于等于

    $ne=不等于

  • 相关阅读:
    二、Java面向对象(11)_final修饰符
    二、Java面向对象(10)_代码块
    二、Java面向对象(9)_面向对象——多态思想
    二、Java面向对象(8)_继承思想——Object类
    二、Java面向对象(8)_继承思想——子类初始化过程
    二、Java面向对象(8)_继承思想——super关键字
    二、Java面向对象(8)_继承思想——方法覆盖
    WP8.1 RT 生命周期详解‏‏‏‏‏‏‏‏‏‏‏‏‏
    将十六进制色值转换成Color
    WindowsPhone8.1RT建立空白应用挂起没反应的解决方案
  • 原文地址:https://www.cnblogs.com/lei0213/p/7055163.html
Copyright © 2011-2022 走看看