python爬虫入门,入门Python爬虫需要掌握哪些技能和知识点?
python爬虫入门,入门Python爬虫需要掌握哪些技能和知识点?详细介绍
本文目录一览: python爬虫入门学什么
如今python可以说算是比较火的,很多人都想学习python这门语言,但是又不知道python入门该学习什么,下面我们来讲述一下python爬虫入门学什么?什么是爬虫?爬虫又被人称为网络蜘蛛,也叫网络机器人,还有人称为蚂蚁,爬虫的主要的功能就是把网站的有价值的内容给获取出来,并且放在自己想要的地方,这些都是爬虫需要做的事情。python爬虫入门学什么?俗话说欲先攻其事必先利其器,学习爬虫之前要先对爬虫有一定的了解,再去学习爬虫就相对比较容易了。学习爬虫首先要学习的就是html,html可以让我们了解网页的结构和网页的整体布局,只有我们了解了网页的结构,才能让爬虫抓取我们想要的部分。其次就是要学习的就是python爬虫,了解python爬虫的原理,并且把python爬虫和实战相结合,在开发实战中我们才能真正的去学习。最后要学习的就是HTTP传输协议,学习网络发送请求和接收的原理,只要掌握这些,才能理解爬虫中的逻辑思维。
爬虫python入门难学吗?
不难!本身上Python就是一门比较简单的编程语言,适合零基础人员,更适合初学者学习,门槛低、功能强大;从实际情况上来说,Python爬虫是里面较为简单的课程,学习起来并不是非常困难的。简单来讲,只要能在网络上看到的数据都是可以爬取得,大多数的爬虫都是通过发送请求-获取页面-解析页面-提取和存储内容来实现,实际就是用来获取网页的信息。
只要自己肯努力!是很好学的!
计算机基础、网络基础,这些先基本了解一下,然后选择一个编程技术方向,现在热门的编程岗位就是Web前端、Java,如果是为了就业可以考虑这两个技术方向,如果是对编程感兴趣,可以学Python,语法简单,可以迅速做一些小项目。
"编程"就是我们为了完成某项任务, 将解决问题的步骤, 用计算机能够理解的语言写成指令, 这就是"编程". 而后, 计算机会根据这些指令一步步执行, 最后完成任务.
编程语言有很多种,只需要精通一门编程语言或者说一个技术方向就可以了,可以结合自身,选择一门自己喜欢并合适自己的。
HTML5+JS(web前端开发)
什么是前端?在网站上看到的一切图片、文字、视频、都是前端写的。
目前web前端开发还是热门编程方向,这门语言对于零基础的学员来说学起来难度不大。
Java
java仍然是市场上最流行和最火爆的编程语言,常常跟企业联系在一起, 因为具备一些很好的语言特性, 以及丰富的框架, 在企业应用中最被青睐。
Python
Python是动态形的灵活的解释性语言,从软件开发到Web开发,Python都有在被使用,因为他的解释性,适合轻量级开发,Python是很多新手会选择的编程语言。
C语言
C语言,语法较多,时间相对还是比较多的,所以也可以考虑从C语言入手,因为打好编程基础,以后再学其他语言会很快上手。如果是快速就业,不太适合C语言
C++
和C语言一样,语法有一定难度,C++是一种最广泛支持范式的编程语言,。当然如果C学的不错,C++上手也会快。
入门及其简单,不过后续你会发现,爬虫需要,动态IP,cookie,user-agent,破解字体加密,破解验证码,破解登录权限,等才是真的难。
学习一门新的编程语言还是会有一定难度的,但是总体还是因人而异。对于会其它编程语言或者有基础的人来说,Python的入门还是相对简单的。但是对于这方面零基础的人来说刚开始还是会有一些困难,但是找到对的学习方式,多练习操作也是能较快的入门。
有编程基础[学Python]爬虫更容易学。但要多看多练,有自己的逻辑想法。用Python达到自己的学习目的才算有价值。如果是入门学习了解,开始学习不难,但深入学习有难度
Python的爬虫入门相对来说较为简单,但仍需要一定的编程基础和专业知识。首先,入门级的爬虫项目通常需要先了解HTML、CSS、JavaScript等基本的前端技术,理解网页的结构与内容。其次,需要学习HTTP协议的基本知识,了解HTTP请求与响应的基本内容、常见状态码的含义、Cookie、Session等技术。然后,需要掌握常用的Python爬虫库,如Requests、BeautifulSoup、Scrapy等,掌握基本的爬虫流程,并学会应用正则表达式提取需要的数据。最后,还需要了解一些反爬虫技术,如UserAgent伪装、IP代理等,并遵守网络爬取的规则,保证合法合规,并能高效率爬取数据。综上所述,Python爬虫入门相对来说较容易,但是也需要一定的学习和实践,需要掌握诸多技术,量不在少。当然,有一定的编程基础和计算机网络知识的人相对来说容易入门。如果你想深入了解的话可以点击学习大厂名师精品课慕课网这是一个不错的选择。慕课网的课程学习过程中可以通过社区的交互功能进行互动交流,可以与其他学员互相探讨问题、分享学习经验。慕课网的课程不仅仅是视频教程,还有文字教程、测试题目、在线交流等多种学习方式,以适应不同的学习需求。
入门Python爬虫需要掌握哪些技能和知识点?
对于程序员来说基本上不存在重复性的工作,任何重复劳动都可以通过程序自动解决。下面千锋带你一起了解爬虫需要哪些相关的技能。
1、基本的编码基础(至少一门编程语言)
这个对于任何编程工作来说都是必须的。基础的数据结构你得会吧。数据名字和值得对应(字典),对一些url进行处理(列表)等等。事实上,掌握的越牢固越好,爬虫并不是一个简单的工作,也并不比其他工作对编程语言的要求更高。
熟悉你用的编程语言,熟悉相关的框架和库永远是百益无害。我主要用Python,用Java写爬虫的也有,理论上讲任何语言都可以写爬虫的,不过最好选择一门相关的库多,开发迅速的语言。用C语言写肯定是自找苦吃了。
2、任务队列
当爬虫任务很大的时候,写一个程序跑下来是不合适的:
如果中间遇到错误停掉,重头再来?这不科学
我怎么知道程序在哪里失败了?任务和任务之间不应该相互影响
如果我有两台机器怎么分工?
所以我们需要一种任务队列,它的作用是:讲计划抓取的网页都放到任务队列里面去。然后worker从队列中拿出来一个一个执行,如果一个失败,记录一下,然后执行下一个。这样,worker就可以一个接一个地执行下去。也增加了扩展性,几亿个任务放在队列里也没问题,有需要可以增加worker,就像多一双亏筷子吃饭一样。
常用的任务队列有kafka,beanstalkd,celery等。
3、数据库
这个不用讲了,数据保存肯定要会数据库的。不过有时候一些小数据也可以保存成json或者csv等。我有时想抓一些图片就直接按照文件夹保存文件。推荐使用NoSQL的数据库,比如mongodb,因为爬虫抓到的数据一般是都字段-值得对应,有些字段有的网站有有的网站没有,mongo在这方面比较灵活,况且爬虫爬到的数据关系非常非常弱,很少会用到表与表的关系。
4、HTTP知识
HTTP知识是必备技能。因为要爬的是网页,所以必须要了解网页。首先html文档的解析方法要懂,比如子节点父节点,属性这些。我们看到的网页是五彩斑斓的,只不过是被浏览器处理了而已,原始的网页是由很多标签组成的。处理最好使用html的解析器,如果自己用正则匹配的话坑会很多。
5、运维
这个话题要说的有很多,实际工作中运维和开发的时间差不多甚至更多一些。维护已经在工作的爬虫是一个繁重的工作。随着工作时间增加,一般我们都会学着让写出来的爬虫更好维护一些。
比如爬虫的日志系统,数据量的统计等。将爬虫工程师和运维分开也不太合理,因为如果一个爬虫不工作了,那原因可能是要抓的网页更新了结构,也有可能出现在系统上,也有可能是当初开发爬虫的时候没发现反扒策略,上线之后出问题了,也可能是对方网站发现了你是爬虫把你封杀了,所以一般来说开发爬虫要兼顾运维。
python爬虫需要什么基础
入手爬虫确实不要求你精通Python编程,但基础知识还是不能忽视的,那么我们需要哪些Python基础呢?首先我们先来看看一个最简单的爬虫流程:第一步 要确定爬取页面的链接,由于我们通常爬取的内容不止一页,所以要注意看看翻页、关键字变化时链接的变化,有时候甚至要考虑到日期;另外还需要主要网页是静态、动态加载的。第二步 请求资源,这个难度不大,主要是Urllib,Request两个库的使用,必要时候翻翻官方文档即可第三步 是解析网页。请求资源成功后,返回的整个网页的源代码,这时候我们就需要定位,清洗数据了谈到数据,第一个要注意的点就是数据的类型,是不是该掌握!其次,网页上的数据往往排列十分整齐,这多亏了列表,使用大部分网页数据整洁而有规律,所以列表、循环语句是不是也要掌握!但值得注意得是网页数据不一定都是整齐而有规律的,比如最常见的个人信息,除了必填选项,其他部分我就不爱填,这时候部分信息缺失了,你是不是得先判断一下是否有数据,再进行抓取,所以判断语句是不是也不能少!掌握以上内容,我们的爬虫基本上能跑起来了,但为了提高代码效率,我们可以借助函数将一个程序分割成多个小部分,每部分负责一部分内容,这样就能根据需要多次调动一个函数了,如果你再厉害点,以后开发个爬虫软件,是不是还要再掌握个类第四步 是保存数据,是不是得先打开文件,写数据,最后关闭啊,所以是不是还得掌握文件的读写啊!所以,你需要的掌握的最最最基本的Python知识点有:
如何入门Python爬虫
个人觉得:
新手学习python爬取网页先用下面4个库就够了:(第4个是实在搞不定用的,当然某些特殊情况它也可能搞不定)
1.打开网页,下载文件:urllib
2.解析网页:,熟悉JQuery的可以用Pyquery
3.使用Requests来提交各种类型的请求,支持重定向,cookies等。
4.使用Selenium,模拟浏览器提交类似用户的操作,处理js动态产生的网页
这几个库有它们各自的功能。配合起来就可以完成爬取各种网页并分析的功能。具体的用法可以查他们的官网手册(上面有链接)。
做事情是要有驱动的,如果你没什么特别想抓取的,新手学习可以从这个闯关网站开始
目前更新到第五关,闯过前四关,你应该就掌握了这些库的基本操作。
实在闯不过去,再到这里看题解吧,第四关会用到并行编程。(串行编程完成第四关会很费时间哦),第四,五关只出了题,还没发布题解。。。
学完这些基础,再去学习scrapy这个强大的爬虫框架会更顺些。这里有它的中文介绍。
Python 爬虫的入门教程有哪些值得推荐的?
Python 爬虫的入门教程有很多值得推荐的,以下是一些比较受欢迎和推荐的教程:
1.《精通 Python 网络爬虫》:这本书是一本入门级的 Python 爬虫教程,适合初学者学习。
Python3 网络爬虫实战:这是一个在线教程,详细介绍了 Python 爬虫的基础知识,包括爬虫的原理、如何使用 Python 爬取网页、如何使用正则表达式和 XPath 解析网页等。
Python 爬虫指南:这是一个在线教程,通过几个简单的例子来介绍 Python 爬虫的基础知识。
网络爬虫实战:这是一个在线课程,通过几个实际案例来介绍 Python 爬虫的基础知识和进阶技巧。
Python 爬虫实战:这是一个在线课程,通过几个实际案例来介绍 Python 爬虫的基础知识和进阶技巧。
以上是一些比较受欢迎和推荐的 Python 爬虫入门教程,你可以根据自己的需求和学习进度选择适合自己的教程。
bilibili上也有一些视频教程。
1. 《Python 爬虫实战》(清华大学出版社)
2. 《Python 网络数据采集》(人民邮电出版社)
3. 《Python 爬虫开发与项目实战》(清华大学出版社)
4. 《Python 爬虫技术实战》(机械工业出版社)
5. 《Python 爬虫从入门到实践》(电子工业出版社)
6. 《Python 爬虫开发实战》(机械工业出版社)
7. 《Python 爬虫技术精讲》(清华大学出版社)
8. 《Python 爬虫高级进阶》(机械工业出版社)
9. 《Python 爬虫实战全攻略》(清华大学出版社)
10. 《Python 爬虫实战精要》(机械工业出版社)
推荐几篇 Python 爬虫入门教程:
《精通Python网络爬虫》这本书是一本经典的入门爬虫教材。
《Python网络爬虫实战》这本书也是一本不错的入门教材。
【莫烦 Python】爬虫教程 也是一个不错的入门教程,视频教程通俗易懂。
官方文档:Beautiful Soup 文档 和 Scrapy 文档也是很不错的参考资料。
Python 爬虫教程 - 洛谷博客 也是一个不错的入门教程。
这些教程都是不错的入门资料,可以让你对 Python 爬虫有一个大致的了解,希望能帮到你。
初学者建议是网上观看教学视频来学习 后续可以搭配书籍深入了解
Python 爬虫的入门教程有很多,以下是我推荐的几本:
1.《Python 网络爬虫开发实战》:这本书介绍了Python爬虫的基本原理,以及如何使用Python编写爬虫程序,实现网络爬虫的功能。
2.《Python爬虫技术实战》:这本书介绍了Python爬虫的基本原理,以及如何使用Python编写爬虫程序,实现网络爬虫的功能。
3.《Python爬虫数据分析》:这本书介绍了如何分析爬取到的数据,以及如何使用Python编写爬虫程序,实现网络爬虫的功能。
4.《Python爬虫实战:深入理解Web抓取》:这本书介绍了如何使用Python编写爬虫程序,实现网络爬虫的功能,以及如何深入理解Web抓取。
5.《Python网络爬虫实战》:这本书介绍了如何使用Python编写爬虫程序,实现网络爬虫的功能,以及如何解决爬虫程序遇到的问题。
以上就是我推荐的几本Python爬虫的入门教程,可以帮助初学者快速掌握Python爬虫的基本技术。
学爬虫需要掌握哪些知识
学习爬虫需要掌握以下几个方面的知识:1. 网络基础知识:了解HTTP协议、HTML、CSS、JavaScript等基本的网络技术和网页开发知识,以便理解网页的结构和数据的获取方式。2. 编程语言:掌握至少一种编程语言,如Python、Java、JavaScript等,用于编写爬虫程序。3. 爬虫框架:学习使用一些常用的爬虫框架,如Scrapy、BeautifulSoup等,可以简化爬虫的开发过程。4. 数据库知识:了解数据库的基本概念和操作,可以将爬取到的数据存储到数据库中进行后续的处理和分析。5. 正则表达式:掌握正则表达式的基本语法,用于在网页中提取所需的数据。6. 反爬虫技术:了解常见的反爬虫技术和应对策略,以便在爬取数据时遇到反爬虫措施时能够应对。7. 数据处理和分析:学习使用一些数据处理和分析工具,如Pandas、NumPy、Matplotlib等,可以对爬取到的数据进行清洗、分析和可视化。八爪鱼采集器为用户提供了简单易用的界面和功能,无需编程和代码知识即可进行数据采集。如果您想快速掌握爬虫技巧,八爪鱼采集器的教程将帮助您轻松入门。请前往官网教程与帮助了解更多详情。
学爬虫需要掌握的知识内容如下:
零基础想要入门Python爬虫,主要需要学习爬虫基础、HTTP和HTTPS、requests模块、cookie请求、数据提取方法值json等相关知识点。
只有在打牢理论知识的基础上,理解爬虫原理,学会使用 Python进行网络请求,才能做到真正掌握爬取网页数据的方法。当然如果大家觉得自学无从下手,可以在博学谷平台上观看视频课程进行学习。
爬虫的入门课程,让大家充分了解理解爬虫的原理,再学会使用 python 进行网络请求的同时,还能掌握如何爬取网页数据的方法,即掌握爬虫技术。
1、找URL,不同的网页请求方式不同,比如说登录,你点击登录的时候的url地址是什么?比如你要爬取图片,图片的地址怎么找?再比如你要获取某个话题的评论,如何获取多页的内容?
仅仅一个URL的获取就会涉及很多,网络 请求:http请求,https请求,请求头,请求方式,cookie等这些要明白。
2、了解了请求,那如何去拿到请求的内容呢?就需要用到一些请求库,比如urllib,requests,ajax或者框架scrapy。
3、拿到了内容密密麻麻的怎么提取我需要的,解析一般有四种方式:CSS选择器、XPATH、BeautifulSoup、正则表达式或普通字符串查找、JavaScript代码加载内容。这些内容需要具备前端的基础和xpath,BeautifulSoup库的使用等。
4、保存数据,数据最终持久化。
总的来讲,编程零基础的朋友不用担心自己学不会或学不好爬虫技术,只要大家选择了适合自己的学习课程,就会发现虽然爬虫技术需要学的内容很多,但是学起来并不枯燥困难,相反还十分有趣。想要掌握爬虫技术现在就开始学习吧。
python爬虫要学什么呢
爬虫,被称为网络机器人,在FOAF社区中间,更经常的称为网页追逐者,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,主要用于搜索引擎,它将一个网站的所有内容与链接进行阅读,并建立相关的全文索引到数据库中,然后跳到另一个网站。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,再不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。学习之前的准备1、一颗热爱学习2、不屈不挠的心一台有键盘的电脑(什么系统都行。我用的os x,所以例子会以这个为准)3、html相关的一些前段知识。不需要精通,能懂一点就够!Python的基础语法知识 。具体的学习路线总体分为三个大方面:1、简单的定向脚本爬虫(request --- bs4 --- re)2、大型框架式爬虫(Scrapy框架为主)3、浏览器模拟爬虫 (Mechanize模拟 和 Selenium 模拟)具体步骤:1、Beautiful Souprequests库的安装与使用,安装beautiful soup 爬虫环境,beautiful soup 的解析器,re库 正则表达式的使用,bs4 爬虫实践。获取百度贴吧的内容bs4 爬虫实践,获取双色球中奖信息bs4 爬虫实践, 获取起点小说信息bs4 爬虫实践,获取电影信息bs4 爬虫实践。 获取悦音台榜单2、Scrapy 爬虫框架安装Scrapy,Scrapy中的选择器 Xpath和CSSScrapy 爬虫实践,今日影视Scrapy 爬虫实践,天气预报Scrapy 爬虫实践,获取代理Scrapy 爬虫实践,糗事百科Scrapy 爬虫实践, 爬虫相关攻防(代理池相关)3、浏览器模拟爬虫Mechanize模块的安装与使用,利用Mechanize获取乐音台公告,Selenium模块的安装与使用,浏览器的选择 PhantomJS,Selenium & PhantomJS 实践,获取代理;Selenium & PhantomJS 实践,漫画爬虫。
如何用Python做爬虫
入门”是良好的动机,但是可能作用缓慢。如果你手里或者脑子里有一个项目,那么实践起来你会被目标驱动,而不会像学习模块一样慢慢学习。另外如果说知识体系里的每一个知识点是图里的点,依赖关系是边的话,那么这个图一定不是一个有向无环图。因为学习A的经验可以帮助你学习B。因此,你不需要学习怎么样“入门”,因为这样的“入门”点根本不存在!你需要学习的是怎么样做一个比较大的东西,在这个过程中,你会很快地学会需要学会的东西的。当然,你可以争论说需要先懂python,不然怎么学会python做爬虫呢?但是事实上,你完全可以在做这个爬虫的过程中学习python :D看到前面很多答案都讲的“术”——用什么软件怎么爬,那我就讲讲“道”和“术”吧——爬虫怎么工作以及怎么在python实现。先长话短说summarize一下:你需要学习基本的爬虫工作原理基本的http抓取工具,scrapyBloom Filter: Bloom Filters by Example如果需要大规模网页抓取,你需要学习分布式爬虫的概念。其实没那么玄乎,你只要学会怎样维护一个所有集群机器能够有效分享的分布式队列就好。最简单的实现是python-rq: https://github.com/nvie/rqrq和Scrapy的结合:darkrho/scrapy-redis · GitHub后续处理,网页析取(grangier/python-goose · GitHub),存储(Mongodb)以下是短话长说:说说当初写的一个集群爬下整个豆瓣的经验吧。1)首先你要明白爬虫怎样工作。想象你是一只蜘蛛,现在你被放到了互联“网”上。那么,你需要把所有的网页都看一遍。怎么办呢?没问题呀,你就随便从某个地方开始,比如说人民日报的首页,这个叫initial pages,用$表示吧。在人民日报的首页,你看到那个页面引向的各种链接。于是你很开心地从爬到了“国内新闻”那个页面。太好了,这样你就已经爬完了俩页面(首页和国内新闻)!暂且不用管爬下来的页面怎么处理的,你就想象你把这个页面完完整整抄成了个html放到了你身上。突然你发现, 在国内新闻这个页面上,有一个链接链回“首页”。作为一只聪明的蜘蛛,你肯定知道你不用爬回去的吧,因为你已经看过了啊。所以,你需要用你的脑子,存下你已经看过的页面地址。这样,每次看到一个可能需要爬的新链接,你就先查查你脑子里是不是已经去过这个页面地址。如果去过,那就别去了。好的,理论上如果所有的页面可以从initial page达到的话,那么可以证明你一定可以爬完所有的网页。那么在python里怎么实现呢?很简单import Queueinitial_page = "http://www.renminribao.com"url_queue = Queue.Queue()seen = set()seen.insert(initial_page)url_queue.put(initial_page)while(True): #一直进行直到海枯石烂 if url_queue.size()>0: current_url = url_queue.get() #拿出队例中第一个的url store(current_url) #把这个url代表的网页存储好 for next_url in extract_urls(current_url): #提取把这个url里链向的url if next_url not in seen: seen.put(next_url) url_queue.put(next_url) else: break写得已经很伪代码了。所有的爬虫的backbone都在这里,下面分析一下为什么爬虫事实上是个非常复杂的东西——搜索引擎公司通常有一整个团队来维护和开发。2)效率如果你直接加工一下上面的代码直接运行的话,你需要一整年才能爬下整个豆瓣的内容。更别说Google这样的搜索引擎需要爬下全网的内容了。问题出在哪呢?需要爬的网页实在太多太多了,而上面的代码太慢太慢了。设想全网有N个网站,那么分析一下判重的复杂度就是N*log(N),因为所有网页要遍历一次,而每次判重用set的话需要log(N)的复杂度。OK,OK,我知道python的set实现是hash——不过这样还是太慢了,至少内存使用效率不高。通常的判重做法是怎样呢?Bloom Filter. 简单讲它仍然是一种hash的方法,但是它的特点是,它可以使用固定的内存(不随url的数量而增长)以O(1)的效率判定url是否已经在set中。可惜天下没有白吃的午餐,它的唯一问题在于,如果这个url不在set中,BF可以100%确定这个url没有看过。但是如果这个url在set中,它会告诉你:这个url应该已经出现过,不过我有2%的不确定性。注意这里的不确定性在你分配的内存足够大的时候,可以变得很小很少。一个简单的教程:Bloom Filters by Example注意到这个特点,url如果被看过,那么可能以小概率重复看一看(没关系,多看看不会累死)。但是如果没被看过,一定会被看一下(这个很重要,不然我们就要漏掉一些网页了!)。 [IMPORTANT: 此段有问题,请暂时略过]好,现在已经接近处理判重最快的方法了。另外一个瓶颈——你只有一台机器。不管你的带宽有多大,只要你的机器下载网页的速度是瓶颈的话,那么你只有加快这个速度。用一台机子不够的话——用很多台吧!当然,我们假设每台机子都已经进了最大的效率——使用多线程(python的话,多进程吧)。3)集群化抓取爬取豆瓣的时候,我总共用了100多台机器昼夜不停地运行了一个月。想象如果只用一台机子你就得运行100个月了...那么,假设你现在有100台机器可以用,怎么用python实现一个分布式的爬取算法呢?我们把这100台中的99台运算能力较小的机器叫作slave,另外一台较大的机器叫作master,那么回顾上面代码中的url_queue,如果我们能把这个queue放到这台master机器上,所有的slave都可以通过网络跟master联通,每当一个slave完成下载一个网页,就向master请求一个新的网页来抓取。而每次slave新抓到一个网页,就把这个网页上所有的链接送到master的queue里去。同样,bloom filter也放到master上,但是现在master只发送确定没有被访问过的url给slave。Bloom Filter放到master的内存里,而被访问过的url放到运行在master上的Redis里,这样保证所有操作都是O(1)。(至少平摊是O(1),Redis的访问效率见:LINSERT _ Redis)考虑如何用python实现:在各台slave上装好scrapy,那么各台机子就变成了一台有抓取能力的slave,在master上装好Redis和rq用作分布式队列。代码于是写成#slave.pycurrent_url = request_from_master()to_send = []for next_url in extract_urls(current_url): to_send.append(next_url)store(current_url);send_to_master(to_send)#master.pydistributed_queue = DistributedQueue()bf = BloomFilter()initial_pages = "www.renmingribao.com"while(True): if request == 'GET': if distributed_queue.size()>0: send(distributed_queue.get()) else: break elif request == 'POST': bf.put(request.url)好的,其实你能想到,有人已经给你写好了你需要的:darkrho/scrapy-redis · GitHub4)展望及后处理虽然上面用很多“简单”,但是真正要实现一个商业规模可用的爬虫并不是一件容易的事。上面的代码用来爬一个整体的网站几乎没有太大的问题。但是如果附加上你需要这些后续处理,比如有效地存储(数据库应该怎样安排)有效地判重(这里指网页判重,咱可不想把人民日报和抄袭它的大民日报都爬一遍)有效地信息抽取(比如怎么样抽取出网页上所有的地址抽取出来,“朝阳区奋进路中华道”),搜索引擎通常不需要存储所有的信息,比如图片我存来干嘛...及时更新(预测这个网页多久会更新一次)