02 2018 档案

摘要:现在我们现在一个分机上引入一个SCRAPY的爬虫项目,要求数据存储在MONGODB中 现在我们需要在SETTING.PY设置我们的爬虫文件 再添加PIPELINE 注释掉的原因是爬虫执行完后,和本地存储完毕还需要向主机进行存储会给主机造成压力 设置完这些后,在MASTER主机开启REDIS服务,将代 阅读全文
posted @ 2018-02-21 15:40 我爱在伊甸园吃苹果 阅读(620) 评论(0) 推荐(0)
摘要:之前我们的爬虫都是单机爬取,也是单机维护REQUEST队列, 看一下单机的流程图: 一台主机控制一个队列,现在我要把它放在多机执行,会产生一个事情就是做重复的爬取,毫无意义,所以分布式爬虫的第一个难点出来了,共享请求队列,看一下架构: 三台主机由一个队列控制,意味着还需要一个主机来控制队列,我们一般 阅读全文
posted @ 2018-02-21 15:08 我爱在伊甸园吃苹果 阅读(698) 评论(0) 推荐(0)
摘要:接着上卷来分析,作为开发人员我们都知道,登录是一个想指定URL发送POST请求的过程,所以我们需要找到请求的URL,以及字段,先用一个错误账号和密码做一下尝试,如果是正确的话会直接跳转到别的页面,这样COOKIE就会刷新 很明显拿到了URL看的出来这是手机号的方式进行登录,看下数据 _xsrf保证请 阅读全文
posted @ 2018-02-18 11:47 我爱在伊甸园吃苹果 阅读(517) 评论(0) 推荐(0)
摘要:有很多网站是需要先登录,才可以浏览的,所以我们这个案例主要讲解如何以登陆的方式抓取这类的页面 第一:http本身是一种无状态的协议 这样两个请求没有任何关系,像淘宝这样的网站需要记录用户的每次请求,来看看有状态的请求 看一下COOKIE本地存储 用户名密码可以存到本地,所以安全性不高,这样就出现了S 阅读全文
posted @ 2018-02-18 11:10 我爱在伊甸园吃苹果 阅读(1318) 评论(0) 推荐(0)
摘要:今日头条这类的网站制作,从数据形式,CSS样式都是通过数据接口的样式来决定的,所以它的抓取方法和其他网页的抓取方法不太一样,对它的抓取需要抓取后台传来的JSON数据,先来看一下今日头条的源码结构:我们抓取文章的标题,详情页的图片链接试一下: 看到上面的源码了吧,抓取下来没有用,那么我看下它的后台数据 阅读全文
posted @ 2018-02-15 10:39 我爱在伊甸园吃苹果 阅读(7469) 评论(0) 推荐(0)
摘要:说到网站数据的爬取,目前为止我见过最复杂的就是天猫了,现在我想对它进行整站的爬取 我们先来看下天猫主页的界面 天猫页面很明显是动态页面 所以我们需要用selenium模块 首先我们抓取下行业列表,留作之后的深度爬取 我们来看下结果: 看到商品链接和行业列表的完美展现了吧 可是当前页面并没抓取完毕,我 阅读全文
posted @ 2018-02-14 20:35 我爱在伊甸园吃苹果 阅读(2577) 评论(0) 推荐(0)
摘要:今天有小朋友说想看一下猫眼TOP100的爬取数据,要TOP100的名单,让我给发过去,其实很简单,先来看下目标网站: 建议大家都用谷歌浏览器: 这是我们要抓取的内容,100个数据,很少 我们看一下页面结构 100部电影分十个页码,也就是一页10个电影,抓取方式为10页循环抓取 先看下代码: 引入模块 阅读全文
posted @ 2018-02-10 08:56 我爱在伊甸园吃苹果 阅读(359) 评论(0) 推荐(0)
摘要:之前我们使用scrapy爬取数据,用的存储方式是直接引入PYMYSQL,或者MYSQLDB,案例中数据量并不大,这种数据存储方式属于同步过程,也就是上一条语句执行完才能执行下一条语句,当数据量变大时,由于SCRAPY解析数据的速率远远大于数据存储入数据库的速度,以至于造成数据阻塞,可以理解为数据高并 阅读全文
posted @ 2018-02-08 10:02 我爱在伊甸园吃苹果 阅读(476) 评论(0) 推荐(0)
摘要:先来看下图形对比: 发现没有这种密集型计算的任务中,多线程没有穿行的速率快,原因就是多线程在线程切换间也是要耗时的而密集型计算任务执行时几乎没以偶IO阻塞,这样你说谁快 阅读全文
posted @ 2018-02-04 10:55 我爱在伊甸园吃苹果 阅读(307) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2018-02-04 10:19 我爱在伊甸园吃苹果 阅读(254) 评论(0) 推荐(0)
摘要:现在很多人都说用多线程工作快是因为多个不同任务可以同时执行,注意我说的是不同任务,要是重复做一件事达到相同效果就是画蛇添足了,其实这是个错误的说法,线程真正的本质是无法同时执行的。现在我们来看下多线程的工作机制: 现在我们就开其两个线程线程1,线程2,分别执行函数1,2,可以看到我在途中写了个主线程 阅读全文
posted @ 2018-02-03 23:47 我爱在伊甸园吃苹果 阅读(295) 评论(0) 推荐(0)
摘要:之前我用过多线程的方式执行了爬虫程序,爬取了糗事百科的数据可以看到速率非常之快,就像正常一个人他要完一个汉堡,再吃喝一瓶水才能走,结果他边吃汉堡边喝水,速率一下加快了一样。首先我们看看什么是线程: 图中我将一个PY文件的内容,进行了细化,这个PY文件如果要执行,那么他这个行为就叫做一个进程,那么线程 阅读全文
posted @ 2018-02-03 23:07 我爱在伊甸园吃苹果 阅读(447) 评论(0) 推荐(0)
摘要:说起python爬虫数据存储就不得不说到mongodb,现在我们来试一下scrapy操作mongodb 首先开启mongodb mongod --dbpath=D:\mongodb\db 开启服务后就可以进行使用, 还是接着上一卷在上进行修改: 来看下结果: 看到没有爬虫的完善就像个公式,不断嵌套 阅读全文
posted @ 2018-02-02 20:42 我爱在伊甸园吃苹果 阅读(318) 评论(0) 推荐(0)
摘要:上一卷中我将爬取的数据文件直接写入文本文件中,现在我将数据存储到mysql中,我依然用的是pymysql,这个很麻烦建表需要在外面建 这次代码只需要改变pipyline就行 来 现在看下结果: 对比发现数据准确无误 阅读全文
posted @ 2018-02-02 19:53 我爱在伊甸园吃苹果 阅读(250) 评论(0) 推荐(0)
摘要:将爬取数据存储在JSON文件里并不难,只需修改pipelines文件 直接看代码: 来看下结果: 中文字符恶心的很 之后我会在后卷中做出修改 阅读全文
posted @ 2018-02-01 21:23 我爱在伊甸园吃苹果 阅读(462) 评论(0) 推荐(0)
摘要:之前我们做的数据爬取都是单页的现在我们来讲讲多页的 一般方式有两种目标URL循环抓取 另一种在主页连接上找规律,现在我用的案例网址就是 通过点击下一页的方式获取多页资源 话不多说全在代码里(因为刚才写这篇文章时电脑出现点问题所以没存下来,所以这一版本不会那么详细) 来 看下结果522*35条连接页面 阅读全文
posted @ 2018-02-01 11:40 我爱在伊甸园吃苹果 阅读(8939) 评论(1) 推荐(0)
摘要:之前我们都是在终端切入到scrapy的路境内执行爬虫的,你要多敲多少行的字节,所以这次我们谈谈如何在编辑器里执行,这个你可以用在爬虫中,当你使用PYTHONWEB开发时尽量不要在编辑器内启动端口服务那样不容易关闭服务 先来看下我编写的爬虫文件 先来看下结果: 看到了吧不停的切换路径,也同时感到了xp 阅读全文
posted @ 2018-02-01 10:21 我爱在伊甸园吃苹果 阅读(428) 评论(0) 推荐(0)