首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python数据存入mongoDB

之前有一篇写了用爬虫爬取新闻网站的新闻数据,写了一个查看新闻的脚本,而并没有把网站上的新闻数据给存储到本地。于是便打算用python把爬到的数据存储到数据库中。

世界是充满欢乐的。我们会遇到很多新的东西,也会忘掉很多现有的东西。旧的不去,新的不来。可是有些时候有些东西我们不想忘掉,就需要有点东西把它们记录下来。脑子是不可能用的了,东西又多又大,脑子怎么装得下?像新闻网站这么多资讯,我要是用脑子全记下来了,我就不用在这里敲键盘了。。。

于是这个时候便可以使用数据库了,之前一直使用mysql而学过的mongodb没怎么用过,这一次是为了练习一下pymongo的使用,所以爬的部分就不展示了。爬的主要内容事先爬了下来存到了一个txt文件中,接下来只要从文件中取出数据,然后一波操作把它们存到mongodb中就行了。

首先启动mongo,我用的是windows系统,在cmd中切换到mongod.exe的安装目录,输入命令:mongod.exe --dbpath xxx\xxx(数据库的存放路径) ,即可启动mongo,然后再打开一个cmd,输入mongo就会自动连接mongodb的本机地址了。

部分的字段已经提前爬了下来

写一段代码提取这些字段:

然后便得把剩下的内容爬一下:新闻内容和热门评论:

热评提取,根据文章的id拼接成要请求的url然后发出ajax请求:

由于要对新闻详情页发出请求,有1万多个页面,一个一个访问的话太慢了,于是便使用线程池来进行多线程爬取,就启动50个线程吧,最后再把爬取得内容存到数据库中,就ok了。

爬完后一共用时1111s,大概18分钟。

使用可视化工具来查看数据库中的数据,

一共12711条数据,Emmm...

剩下的数据库部分的代码以及主函数的代码如下

下篇再见。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180818G0O4RA00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券