投稿    登录
  博主录制的Python3爬虫视频教程已发布!详情请戳Python3爬虫视频教程!希望大家支持!非常感谢!

小白爬虫第三弹之去重去重

Python 哎哟卧槽 10362浏览 41评论

QQ图片20161022193315

好了!开头要说点啥,我想你们已经知道了!

QQ图片20161021224219

没错!我又来装逼了··

前面两篇博文,不知道大家消化得怎么了。不知道各位有没注意到,前面两篇博文完成的工作,只能保证下载;你电脑不能关机,不能断网,总之不能出意外!否则啊!!!

!!!!你就得重头开始啊!!!!

20160124759183737

今天,我们来想想办法让它不重头下载;我们来记录我们已经下载过的地址!ヾ(@⌒ー⌒@)ノ这样就可以实现不重新下载啦!

本来刚开始我是准备用本地txt来记录的,不过仔细一想用本地txt逼格不够啊!要不用MySQL吧!然后我自己就用了MySQL。

QQ图片20161102215153

然而你以为我会在这教程里面用MySQL嘛!哈哈哈!我们来用MongoDB!!这数据库最近很火啊!逼格直线提升啊!哈哈哈!点我去官网下载

安装mongoDB:

123

在C盘建一个用来存储数据的文件夹 MongoDB;

创建以下两个目录:

C:\data\log\mongod.log             存储日志

C:\data\db    存储数据

 

在C:\MongoDB文件夹下面创建一个mongod.cfg的配置文件写入以下配置:

一定要取消隐藏后缀名,不然更改不会生效!

在管理员权限的cmd 中执行以下命令将mongoDB安装成服务:

 

安装服务

上面两张图片是GIF点击是可以看到过程的哦!!!ヾ(=゚・゚=)ノ喵♪

 

服务器安装完了,CMD启动一下:

验证是否安装成功

搞定!

好啦!数据库装完了,我们来接着上一篇博文的内容继续啦!

保险起见建议大家还是看一下MongoDB的基础(只需要知道那些命令是做了啥,这样就好啦!)

首先我们我们这一次需要一个模块 PyMongo;这是Python用来操作MongoDB的模块,不要担心使用起来很简单的!

现在我们在上一篇博文完成的代码中导入模块:

第一步:

在class mzitu(): 下面添加这样一个函数:

好啦!第一步搞定,

第二步:

我们更改一下def all_url函数:

第三步:

我们来改一下 def html这个函数:

第四步:

我们来改一下def img 这个函数:

self.meizitu_collection.save(post)

这个是怎么来的我要说一下,可能有点迷糊:

def __init__(self):    函数中:

client = MongoClient()

db = client[‘meinvxiezhenji’]
self.meizitu_collection = db[‘meizitu’]

所以意思就是:在meizixiezhenji这个数据库中的meizitu这个集合保存post这个字典里面的数据哦!这么解释懂了吧?ヾ(@⌒ー⌒@)ノ

QQ图片20161021223818

好了、一个可以实现去重的爬虫就实现了!φ(゜▽゜*)♪是不是好简单 哈哈哈

顺带还存储了一堆信息(才不会告诉你们这才是我需要的呢)

好了 完整的代码贴上来了!

PS:需要先说一下MongDB是不需要先建数据库和集合的,会自动判断 存在则直接写入数据,不存在 则先创建需要的数据库和集合,再写入数据(是不是超爽?哈哈哈)

 

转载请注明:静觅 » 小白爬虫第三弹之去重去重

喜欢 (55)or分享 (0)

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击下面的