pymongo

Django 通过 mongoengine 连接 MongoDB 进而使用orm进行CRUD

瘦欲@ 提交于 2020-05-07 21:18:06
一. 在python脚本中, 我们通常可以使用pymongo模块实现与mongodb数据库的交互, 但是在使用Django框架进行定制开发的web server 项目中, 仍然使用pymongo模块的话, 显然是过于“原始”,这时可以考虑使用 mongoengine 模块, 通过这个模块, 可以封装数据模型, 然后以orm的形式进行crud,实现对mongodb数据库的操作。 这里仅对如何快速的使用这个模块做一个简单说明。 二. 安装 mongoengine pip install mongoengine 三. django 配置文件中配置连接mongodb数据库 import mongoengine # 创建与mongodb数据库的连接 MONGO_CONN = mongoengine.connect( db = " lowman " , # 需要进行操作的数据库名称 alias= ' default ' , # 必须定义一个default数据库 host= " 192.168.3.69 " , port =27017 , username = " 渣男不但丑 " , password = " 28269 " , authentication_source = " admin " , # 进行身份认证的数据库,通常这个数据库为admin“ ) 四. models.py

新浪微博python爬虫分享(一天可抓取 1300 万条数据),超级无敌

梦想与她 提交于 2020-05-04 09:28:06
直接进入主题 爬虫功能: 此项目和QQ空间爬虫类似,主要爬取新浪微博用户的个人信息、微博信息、粉丝和关注(详细见此)。还要注意:不管你是为了Python就业还是兴趣爱好,记住:项目开发经验永远是核心,如果你没有2020最新python入门到高级实战视频教程,可以去小编的Python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,里面很多新python教程项目,还可以跟老司机交流讨教! 代码获取新浪微博Cookie进行登录,可通过多账号登录来防止新浪的反扒(用来登录的账号可从淘宝购买,一块钱七个)。 项目爬的是新浪微博wap站,结构简单,速度应该会比较快,而且反扒没那么强,缺点是信息量会稍微缺少一些(可见爬虫福利:如何爬wap站)。 爬虫抓取微博的速度可以达到 1300万/天 以上,具体要视网络情况,我使用的是校园网(广工大学城校区),普通的家庭网络可能才一半的速度,甚至都不到。 环境、架构: 开发语言:Python2.7 开发环境:64位Windows8系统,4G内存,i7-3612QM处理器。 数据库:MongoDB 3.2.0 (Python编辑器:Pycharm 5.0.4;MongoDB管理工具:MongoBooster 1.1.1) 主要使用 scrapy 爬虫框架。 下载中间件会从Cookie池和User-Agent池中随机抽取一个加入到spider中。

发家致富靠AI:使用keras预测NBA比赛赚钱,回报率136%

六月ゝ 毕业季﹏ 提交于 2020-05-02 16:00:20
投注者和博彩者没有太多共同点——人们可以把他们的关系描述为一场竞争、决斗、战争。但在梦中,他们却为同样的幻想而垂涎三尺:一个完美的预测模型,使用它能够精确地预测出未来游戏的结果。通过深入学习,这或许是可能的——或者至少比以前的数据科学技术更容易。 基本假设是NBA市场效率低下(价格或投注线并不能反映出所有可用信息),而且可能比大多数市场效率更低,因为铁杆球迷倾向于只赌他们最喜欢的球队。如果你能对市场的低效率下赌注,你就能赚钱。我们识别低效率的方法之一是通过数据分析。 尽管许多尝试这一挑战的模型都是准确的,但大多数模型离盈利还差得很远。原因很简单:博彩公司也非常准确。即使你能达到博彩公司的准确性,你也会因为5%的投注费而失败。 图表是365net的预测线与实际的赢取百分比。一个成功的模型必须能够通过完美的回归分析预测博彩公司的微小波动。 我的模型是用带有Tensorflow的Python构建的,它分析了过去11个NBA赛季,并且在很多方面与其他的深度学习模型相似(后者经常被试图用于解决这个问题)。但是我们的模型有一个关键的区别——它使用了一个自定义的损失函数来剔除与博彩公司的相关性。我们正在挑选博彩公司错误预测获胜百分比的游戏。 去相关损失公式-这很重要!!!!!!! 源码 模型结构 我用 nba_api Python库 抓取了得分记录。数据存储在MongoDB集合中

当用户管理系统遇上python和mongodb后……

青春壹個敷衍的年華 提交于 2020-04-28 08:10:05
Overview: 环境 前言 效果图 mongdb安装 代码涉及知识点 关于windows的cmd下执行python文件显示中文乱码的问题 总结 0.环境 操作系统:Windows Python版本:3.6.0 MongoDB版本:4.0.6 1.前言 同学们还记得,前一次小胖用python结合json文本存储实现的用户管理系统么? 注:详见「 手把手教你用python实现一个简单用户管理系统 」 现在小胖将这个代码进行了升级,改成用mongodb来存储用户数据。这样又能学到python操作mongodb的用法了有没有。 2.效果图 2.1 修改密码 2.2 录入用户 2.3 查找用户 2.4 删除用户 2.5 mongdb 中的数据格式 3.mongdb安装 3.1 下载 下载链接: https://www.mongodb.com/download-center/community 注:官网下载很慢,同学自己搞个会员加速下,你懂的。 3.2 安装 基本是一路下一步,需要注意的地方小胖网上找了几张图来说明。 这里可以自定选择需要安装的东西(小胖选择完全安装,随便你们): 选择安装路径: 但是需要注意不要选择一个叫 "install mongoDB compass" 的东西,否则可能要很长时间都一直在执行安装,MongoDB Compass 是一个图形界面管理工具。 注

如何利用scrapy新建爬虫项目

两盒软妹~` 提交于 2020-04-24 18:44:11
抓取豆瓣top250电影数据,并将数据保存为csv、json和存储到monogo数据库中,目标站点:https://movie.douban.com/top250 一、新建项目 打开cmd命令窗口,输入:scrapy startproject douban【新建一个爬虫项目】 在命令行输入:cd douban/spiders【进入spiders目录】 在命令行输入:scrapy genspider douban_spider movie.douban.com【douban_spider为爬虫文件,编写xpath和正则表达式的地方,movie.douban.com为允许的域名】 在pycharm打开创建的douban项目,目录结构如下: 二、明确目标 分析网站,确定要抓取的内容,编写items文件; import scrapy class DoubanItem(scrapy.Item): # define the fields for your item here like: # name = scrapy.Field() #序号 serial_number = scrapy.Field() #电影名称 movie_name = scrapy.Field() #电影简介 introduce = scrapy.Field() #星级 star = scrapy.Field() #评价数

python连接MongoDB(有密码有认证)

南楼画角 提交于 2020-04-24 06:55:10
from pymongo import MongoClient host = ' 127.0.0.1 ' client = MongoClient(host, 27017 ) #连接mydb数据库,账号密码认证 db = client.admin # 先连接系统默认数据库admin # 下面一条更改是关键,我竟然尝试成功了,不知道为啥,先记录下踩的坑吧 db.authenticate( " root " , " 123456 " ,mechanism= ' SCRAM-SHA-1 ' ) # 让admin数据库去认证密码登录,好吧,既然成功了, my_db = client.mydb # 再连接自己的数据库mydb collection = my_db.myset # myset集合,同上解释 collection.insert({ " name " : " zhangsan " , " age " : 18 }) # 插入一条数据,如果没出错那么说明连接成功 for i in collection.find(): print(i) 参考: https://www.jianshu.com/p/7437666f93e5 https://blog.csdn.net/zaishijizhidian/article/details/80075800 https://www.cnblogs

python操作mongo(2)

泪湿孤枕 提交于 2020-04-15 00:53:31
【推荐阅读】微服务还能火多久?>>> 更新数据 你可以通过调用**update_one()和update_many()**方法来更新集合collection中特定的文档.update_one()一次只能更新一个内容。使用update_many()可以一次性更新多个文档内容。 预备条件 from pymongo import MongoClient client = MongoClient() db = client.test 更新高等级字段 下面的操作是更新第一个匹配name为juni的文档,通过$set操作来更新cuisine和currentDate字段(更新为当前的时间)。 from pymongo import MongoClient client=MongoClient() db=client.test result = db.restaurants.update_one( {"name": "Juni"}, { "$set": { "cuisine": "American (New)" }, "$currentDate": {"lastModified": True} } ) 调用 update_one操作返回的一个UpdateResult对象,表示匹配的文件计数 modified_count表示的是当前修改的总数 result.matched_count

How to match a string consisting special character like hyphen and spaces

我的未来我决定 提交于 2020-04-07 08:13:10
问题 I have a string as: word : 'A-Scan Ultrasonic' How to match this with : 'A Scan Ultrasonic' I have tried my luck as {word:{$regex:".*A Scan Ultrasonic.*",$options: 'i'}} But this doesn't fetch any result May I know how this can be matched , any help is appreciated , TIA 回答1: It's actually no mongo thing, you should use proper regex. Try with this: { name: { $regex: /.*A(-|\s)Scan(-|\s)Ultrasonic.*/}} 来源: https://stackoverflow.com/questions/60810426/how-to-match-a-string-consisting-special

How to match a string consisting special character like hyphen and spaces

隐身守侯 提交于 2020-04-07 08:12:27
问题 I have a string as: word : 'A-Scan Ultrasonic' How to match this with : 'A Scan Ultrasonic' I have tried my luck as {word:{$regex:".*A Scan Ultrasonic.*",$options: 'i'}} But this doesn't fetch any result May I know how this can be matched , any help is appreciated , TIA 回答1: It's actually no mongo thing, you should use proper regex. Try with this: { name: { $regex: /.*A(-|\s)Scan(-|\s)Ultrasonic.*/}} 来源: https://stackoverflow.com/questions/60810426/how-to-match-a-string-consisting-special

How to match a string consisting special character like hyphen and spaces

懵懂的女人 提交于 2020-04-07 08:11:48
问题 I have a string as: word : 'A-Scan Ultrasonic' How to match this with : 'A Scan Ultrasonic' I have tried my luck as {word:{$regex:".*A Scan Ultrasonic.*",$options: 'i'}} But this doesn't fetch any result May I know how this can be matched , any help is appreciated , TIA 回答1: It's actually no mongo thing, you should use proper regex. Try with this: { name: { $regex: /.*A(-|\s)Scan(-|\s)Ultrasonic.*/}} 来源: https://stackoverflow.com/questions/60810426/how-to-match-a-string-consisting-special