• 2.1 python使用MongoDB 示例代码


    import pymongo
    
    
    client = pymongo.MongoClient('localhost', 27017)  # MongoDB 客户端
    walden = client['walden']  # 数据库中创建的名称
    sheet_tab = walden['sheet_tab']  # 创建Table
    
    # 演示代码1
    # path = '/Users/qiongyanzhu/Documents/Plan-for-combating-master/week2/2_1/2_1code_of_video/walden.txt'
    # with open(path, 'r') as f:
    #     lines = f.readlines()
    #     for index, line in enumerate(lines):
    #         data = {
    #             'index': index,
    #             'line': line,
    #             'words': len(line.split())
    #         }
    #         print(data)
    #         sheet_tab.insert_one(data)
    
    # 演示代码2
    # for item in sheet_tab.find({'words': 0}):
    #     print(item)
    
    # 演示代码3
    # $lt/$lte/$gt/$gte/$ne
    for item in sheet_tab.find({'words': {'$lt': 5}}):
        print(item)
    
    # 演示代码4
    for item in sheet_tab.find():
        print(item['line'])
    

      

    from bs4 import BeautifulSoup
    import requests
    import pymongo
    
    
    client = pymongo.MongoClient('localhost', 27017)
    xiaozhu = client['xiaozhu']
    sheet_tab = xiaozhu['sheet_tab']
    
    url_as = ['http://bj.xiaozhu.com/search-duanzufang-p{}-0/'.format(str(number)) for number in range(1, 4)]
    
    
    def insert_house_info(url_s):
        for url_a in url_s:
            # 获取页面数据
            wb_data = requests.get(url_a)
            # 采用lxml解析引擎,解析数据
            soup = BeautifulSoup(wb_data.text, 'lxml')
            prices = soup.select('span.result_price')
            titles = soup.select('#page_list > ul > li > div.result_btm_con.lodgeunitname > div > a > span')
            urls = soup.select('#page_list > ul > li > div.result_btm_con.lodgeunitname')
    
            for price, title, url in zip(prices, titles, urls):
                info = {
                    'price': int(price.get_text()[1:len(price.get_text())-2]),
                    'title': title.get_text(),
                    'url': url.get('detailurl')
                }
                # print(info)
                sheet_tab.insert_one(info)
    
    
    def find_house():
        for info in sheet_tab.find({'price': {'$gt': 500}}):
            print(info)
    
    
    insert_house_info(url_as)
    find_house()
    

      

  • 相关阅读:
    PowerDesigner15在win7-64位系统下对MySQL反向工程
    像竹子一样有节操
    spring 注解
    如何实现在已有代码之后添加逻辑之java动态代理
    如何实现在已有代码之后添加逻辑之继承,组合(静态代理)实现方法
    MySql按周,按月,按日分组统计数据
    SpringBoot 获取前端传递Json的几种方法
    Spring boot 基础整理(一)
    layui常用插件(二) 时间插件
    layui常用插件(一) 轮播图
  • 原文地址:https://www.cnblogs.com/mspeer/p/5634232.html
Copyright © 2020-2023  润新知