请问:在写Python爬虫时,用Scrapy框架,和不用框架直接写有什么优势0-0

我的猪仔队友 2017-12-25 04:35:57
小弟学了一个月爬虫,现在学会了用Python自己造轮子,爬取豆瓣、meizitu.com、校花网等网站;
这几天在学习Scrapy框架的爬虫。我的疑问是:没有感觉到框架的优势啊?我不用Scrapy框架,自己写请求网页、解码、下载文件的函数,组成一个爬虫,不也可以下载大量网页信息吗???

求问论坛的各位大神0-0
...全文
972 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
我的猪仔队友 2017-12-28
  • 打赏
  • 举报
回复
引用 8 楼 weixin_38244232 的回复:
[quote=引用 1 楼 xpresslink 的回复:] 是的, 小数据量的爬虫只是雕虫小技。 实际上每个网页都不一样,基本上都要单独处理。 只有搜索引擎那个级别的爬虫才是真正有难度的技术。
大佬。我也是初学者,我用SCRAPY SHELL 连接 豆瓣电影TOP250一直403,请问你们知道这是什么问题吗?[/quote]403表示禁止访问,应该是豆瓣设置了反爬机制,把你的爬虫程序给禁止了。你试一下破解反爬的方法,例如用time模块模拟睡眠,或者用多个id、headers之类的方法去试试
摇就完事了 2017-12-28
  • 打赏
  • 举报
回复
引用 1 楼 xpresslink 的回复:
是的, 小数据量的爬虫只是雕虫小技。 实际上每个网页都不一样,基本上都要单独处理。 只有搜索引擎那个级别的爬虫才是真正有难度的技术。
大佬。我也是初学者,我用SCRAPY SHELL 连接 豆瓣电影TOP250一直403,请问你们知道这是什么问题吗?
摇就完事了 2017-12-28
  • 打赏
  • 举报
回复
我也是初学者,我用SCRAPY SHELL 连接 豆瓣电影TOP250一直403,请问你们知道这是什么问题吗?
我的猪仔队友 2017-12-28
  • 打赏
  • 举报
回复
引用 5 楼 CaiNiaoWuZui 的回复:
数据量小,逻辑简单的时候,自己写的爬虫程序当然工作看起来没什么; 如果是量大,逻辑复杂的时候,除非你水平比scrapy框架高,否则.....; scrapy框架绝对的神器,能大大减少爬虫的开发时间。 另外,我认为scrapy也非常灵活。 使用scrapy,你只需重心放在提取网页、编写中间件反爬就OK了,保存数据和配置不费什么力气,出队和去重几乎不需要费心。
感谢您的答复,祝你生活愉快
CaiNiaoWuZui 2017-12-28
  • 打赏
  • 举报
回复
数据量小,逻辑简单的时候,自己写的爬虫程序当然工作看起来没什么;
如果是量大,逻辑复杂的时候,除非你水平比scrapy框架高,否则.....;
scrapy框架绝对的神器,能大大减少爬虫的开发时间。
另外,我认为scrapy也非常灵活。
使用scrapy,你只需重心放在提取网页、编写中间件反爬就OK了,保存数据和配置不费什么力气,出队和去重几乎不需要费心。
我的猪仔队友 2017-12-26
  • 打赏
  • 举报
回复
引用 3 楼 xpresslink 的回复:
TB级数据类型是什么样的? 从优酷爬200个电影和把百度贴吧爬下来是完全不同的思路。 scapy 是个成熟的框架, 是打包方案,底层是异步框架 twisted ,并发是最大优势,因为同时爬很多网页时,网络io阻塞问题就要考虑了。 直接上手的话自己写的代码可能会少一些,但是相对缺少灵活性,关键看你要爬什么。 后来由于有了基于协程的Python网络库gevent,可以直接把同步代码当成异步来执行非常方便了,所有也有很多人用 gevent+requests 的方案。 现在Python3.4以后有了 asyncio 并且在python3.5 里加了 async/await关键字以后,用协程可能是将来的趋势了。 其实爬虫最大的工作量都是花费精力在对付反爬上面。
膜拜大神,手动比心,感谢!
混沌鳄鱼 2017-12-25
  • 打赏
  • 举报
回复
TB级数据类型是什么样的? 从优酷爬200个电影和把百度贴吧爬下来是完全不同的思路。 scapy 是个成熟的框架, 是打包方案,底层是异步框架 twisted ,并发是最大优势,因为同时爬很多网页时,网络io阻塞问题就要考虑了。 直接上手的话自己写的代码可能会少一些,但是相对缺少灵活性,关键看你要爬什么。 后来由于有了基于协程的Python网络库gevent,可以直接把同步代码当成异步来执行非常方便了,所有也有很多人用 gevent+requests 的方案。 现在Python3.4以后有了 asyncio 并且在python3.5 里加了 async/await关键字以后,用协程可能是将来的趋势了。 其实爬虫最大的工作量都是花费精力在对付反爬上面。
我的猪仔队友 2017-12-25
  • 打赏
  • 举报
回复
引用 1 楼 xpresslink 的回复:
是的, 小数据量的爬虫只是雕虫小技。 实际上每个网页都不一样,基本上都要单独处理。 只有搜索引擎那个级别的爬虫才是真正有难度的技术。
谢谢您,请问在处理TB级数据的时候,不使用Scrapy框架,只是用自己造轮子的爬虫小程序,技术上可以实现吗?这与使用Scrapy框架相比,有什么缺点呢?
混沌鳄鱼 2017-12-25
  • 打赏
  • 举报
回复
是的, 小数据量的爬虫只是雕虫小技。 实际上每个网页都不一样,基本上都要单独处理。 只有搜索引擎那个级别的爬虫才是真正有难度的技术。

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧