Scrapy
文章平均质量分 84
孔天逸
認めること前に進めっている。
展开
-
Scrapy定向爬虫教程(三)——爬取多个页面
本节内容本部分所实现的功能是,批量的爬取网页信息,不再是像以前那样只能下载一个页面了。也就是说,分析出网页的url规律后,用特定的算法去迭代,达到把整个网站的有效信息都拿下的目的。 因为本部分讲完后,功能已经到了可以使用的地步,所以我把本部分的结果独立出来,把项目上传到了github,小伙伴可以下载参考,地址https://github.com/kongtianyi/heartsong。教程余下的原创 2016-10-13 22:50:20 · 30945 阅读 · 1 评论 -
Scrapy定向爬虫教程(一)——创建运行项目和基本介绍
前言目前网上的Scrapy中文教程比较少,而且大多教程使用的Scrapy版本较老,比如说这个Scrapy 0.25 文档,如其名,上古时期的翻译文档;再比如极客学院的视频教程使用的是1.0.x版本,跟新版相比还是有出入。这种情况使得新手入门Scrapy较为困难,而且各种掉坑。本人也是只刚入门的菜鸟,我希望能用菜鸟的语言给其他想要踏进Scrapy大门的小菜鸟指引一条道路。至少比我踩得坑少点吧^-^。开原创 2016-10-13 22:34:09 · 22095 阅读 · 3 评论 -
基于Redis的布隆过滤器的实现
项目简介包含一个基于Redis的布隆过滤器的实现,以及应用到Scrapy中的Demo。地址:BloomFilterRedis布隆过滤器网上有很多介绍,推荐《数学之美》,介绍的很详尽,此处不再赘述。哈希函数布隆过滤器中需要n个哈希函数,我使用的是Arash Partow提供的常见哈希函数。建立在Redis上的布隆过滤器Redis中有一个数据结构叫做Bitmap(下方有官网详解),它提供一个最大长度为5原创 2017-04-30 17:57:51 · 30427 阅读 · 1 评论 -
用Scrapy shell调试xpath
昨日一道友问我会不会用scrapy shell检查xpath,我表示没搞过,都是直接在代码里硬怼,尴尬。然而其实也没什么难的,在这记录一下方法。首先还是安利一下国内翻译的scrapy文档,虽然最新的翻译版本是1.0版,scrapy已经出到1.3版,但是这份文档仍然非常好用,只是有些版本差异带来的小坑。在命令行键入scrapy shell进入scrapy shell终端,如果你安装了IPython,原创 2017-01-17 11:44:39 · 13268 阅读 · 0 评论 -
Scrapy定时关闭
之前转载过一篇介绍定时执行Scrapy方法的博文:scrapy定时执行抓取任务,并且一直在使用这个方法做增量爬虫。但是问题来了,假设如下情景:某一天,我要爬的网站更新了非常非常多的内容,以至于一天过去了,我的爬虫还没有停止工作。但是我的Ubuntu系统并不知道,于是它又定时的去crontab中执行了定时任务。于是就出现了如下尴尬的情景:我的系统里同时运行着两只有同样功能的爬虫。这太尴尬了,即浪费系统原创 2017-03-19 22:53:25 · 5413 阅读 · 3 评论 -
探究在线课程时长与观看人数的关系——以极客学院为例
背景看网络课程是假期充电的好方法,遇到一节短短的干货网络课,真是让人受益匪浅、回味无穷。但不知大家有没有类似的感受,当你在线上课程平台看到一个感兴趣的课程,并迫不及待的点进去一探究竟时,巨长的课程时长让你的热情瞬间下降了一半。就算仍然饶有兴致的开始了学习,中途可能就打哈哈流泪进而放弃了,下次再看到课程时间过长的,直接pass!是不是就我自己有这个毛病呢?闲来无事,用数据分析的方法来对这个问题一探究竟原创 2017-02-14 17:49:03 · 1505 阅读 · 0 评论 -
scrapy定时执行抓取任务
原文链接:http://www.cnblogs.com/justinzhang/p/4500409.html在ubuntu环境下,使用scrapy定时执行抓取任务,由于scrapy本身没有提供定时执行的功能,所以采用了crontab的方式进行定时执行:首先编写要执行的命令脚本cron.sh#! /bin/sh转载 2016-11-18 22:38:54 · 5834 阅读 · 0 评论 -
win10安装python3.x+scrapy
下载安装python3官网下载就好,https://www.python.org/downloads/release/python-352/用installer下载比较方便,它直接把环境变量都帮你配了。升级pip安装好之后在cmd里执行python -m pip install -upgrade pip把pip提到最新版本下载lxmllxml是解析网页用的,scrapy依赖于它,它是一个第三方的库,原创 2016-11-07 23:00:00 · 2839 阅读 · 0 评论 -
Scrapy定向爬虫教程(五)——保持登陆状态
本节内容在访问网站的时候,我们经常遇到有些页面必须用户登录才能访问。这个时候我们之前写的傻傻的爬虫就被ban在门外了。所以本节,我们给爬虫配置cookie,使得爬虫能保持用户已登录的状态,达到获得那些需登录才能访问的页面的目的。由于本节只是单纯的想保持一下登陆状态,所以就不写复杂的获取页面了,还是像本教程的第一部分一样,下载个网站主页验证一下就ok了。本节github戳此处。原理一般情况下,网站通过原创 2016-10-15 12:16:27 · 21279 阅读 · 7 评论 -
Scrapy定向爬虫教程(六)——分析表单并回帖
本节内容在某些时候,网站的某些内容的访问不仅仅需要用户登录,而且需要回复才能看到全部内容,如下图。所以我们需要通过模拟表单提交实现用爬虫回帖,进而获取到隐藏内容。本节就来介绍模拟表单提交的方法,github地址:https://github.com/kongtianyi/heartsong/tree/reply前提你已经了解了HTML表单的相关知识(这个很好找)和scrapy的简单功能以及配置Coo原创 2016-11-05 10:59:05 · 6699 阅读 · 4 评论 -
Scrapy定向爬虫教程(四)——数据存入MongoDB
本节内容这一小结我们共同学习把Scrapy爬取到的数据存储到MongoDB数据库中。其中包括以下知识:Linux下MongoDB的安装pymongo的安装Scrapy + pymongoRobmongo的下载使用我已将本节内容的源码传至本项目的useMongoDB分支,不学习本节不影响以后的教程学习。安装MongoDB使用apt-get进行安装sudo apt-get install mo原创 2016-10-14 14:05:16 · 17402 阅读 · 10 评论 -
Scrapy定向爬虫教程(二)——提取网页内容
本节内容在这一小结,我将介绍如何使用Scrapy通过Selector选择器从网页中提取出我们想要的内容,并将这些内容存放到本地文件。 我们的目标网页是http://www.heartsong.top/forum.php?mod=viewthread&tid=8,一个有七层楼的帖子。我们要获取到每一层楼的下列信息: * 所属主题帖的标题 * 所属主题帖的url * 这一楼层的作者 * 这一楼原创 2016-10-13 22:41:18 · 11484 阅读 · 16 评论 -
Scrapy+PhantomJS+Selenium动态爬虫
转自http://jiayi.space/post/scrapy-phantomjs-seleniumdong-tai-pa-chong#fb_new_comment很多网页具有动态加载的功能,简单的静态页面爬虫对它就无能为力了。这时候就需要PhantomJS+Selenium两大神器,再加上Scrapy爬虫框架,就可以拼凑成一个动态爬虫。PhantomJS简单点说PhantomJS就是一个没有界转载 2017-04-27 16:43:56 · 22619 阅读 · 6 评论