想学爬虫就一定要学Python吗?

 我来答
千锋IT教育
2022-09-21 · 千锋-IT职业教育良心机构
千锋IT教育
向TA提问
展开全部
学python不一定要学爬虫。python的应用范围很广泛,如软件开发、科学计算、自动化运维、云计算、web开发、网络爬虫、人工智能等。爬虫不仅仅可以用python写,很多语言都可以实现爬虫。例C,C++、C#、Perl、 Python、Java、 Ruby都可以写爬虫,原理其实相差不大,只不过是平台问题。网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。

传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件;爬虫主要的工作就是根据一定的规则去抓取网络上我们想要的数据的程序,这里大家要注意的是爬虫不一定非要使用Python才可以实现的,使用JavaScript、Java等语言都是可以实现的。千锋教育拥有多年Python培训服务经验,采用全程面授高品质、高体验培养模式,拥有国内一体化教学管理及学员服务,助力更多学员实现高薪梦想。
兔震特i
2020-04-18 · TA获得超过978个赞
知道大有可为答主
回答量:3288
采纳率:77%
帮助的人:97.4万
展开全部

1. 变幻莫测的网络爬虫

写过爬虫的小猿们可能都有这么一个感觉,就是昨天跑的好好的爬虫,今天可能就出问题,不work了。这里面的原因可能就是,网页的改版,网站的封锁等等。遇到这种情况,我们就必须在最快的时间内调试找出问题所在,并以最快的速度修复,使其尽快上线跑起来。

2. 随机应变的Python

鉴于上述爬虫复杂的变化,写网络爬虫就必须依赖一个快速开发、灵活的语言,同时又有完整丰富的库支撑。而同时具备这些优点的语言,无疑就是Python了。所以,Python天然就是为爬虫而生,爬虫天然就是择Python而用。

3. 简洁丰富的Python

看到Python和网络爬虫这种天然相连的关系,小猿们不禁要问,Python适合网络爬虫的天然属性都是哪些呢?

3.1 简洁的语法

Python的语法非常简单,提倡简洁而不简单,Python开发者的哲学就是“用一种方法,最好是只有一种方法来做一件事”,这种哲学让你写的代码没有太多个人风格,易于让他人看懂你的代码,也让你轻易看懂别人的代码。Python的简洁,也让开发者可以仅用几行代码就实现一个功能,而同样的功能用Java可能要几十行上百行,要用C++可能是几百行。

小猿们可以试试在Python解释器里面运行import this,来品味一下Python的哲学:


Python简洁的语法,让你实现、修改爬虫都变得轻松起来。也就是说,写起来贼快!人生苦短,何不Python

3.2 丰富的Python模块

小猿们应该已经听说过Python模块(库)的丰富性,或许只是还没有时间和机会接触过那么多而已。这里,身经百战、见多识广给你撂下一句话:“几乎所有你想要的功能Python都有库实现了”。这句话,似乎很狂妄,但满足你90%的需求没问题。所以,小猿们要记住这句话,在以后的开发过程中,需要什么基本功能了,就不妨先去搜搜、问问,看看是不是已经有人实现了这个功能,并且上传到pypi上了,而你要做到可能仅仅是pip install。同时,也验证一下这句话是不是那么回事儿。

比方说,

我要下载网页就用,

Python标准模块urllib.request,还有好的没话说的第三方开源模块requests

异步http请求的有aiohttp

我要处理网址url就用:

Python自带的模块urllib.parse

我要解析html就用:

基于C语言库的高效率模块lxml, 好用的beautifulsoap。

我要管理网址,记录下载成功的、失败的、未下载的各种url的状态,就用:

Python封装的key-value数据库leveldb

我要用成熟的爬虫框架,就用:

历史悠久的scrapy,后起之秀pyspider。

我要支持javascript和ajax,就用:

浏览器模拟框架Selenium,加上不需要桌面环境跑着Linux服务器上的大名鼎鼎的Google Headless Chrome。

以上,只是我用过的写网络爬虫需要的一些基本模块,具体实践中需要的基本功能都可以先搜搜看,没准儿就已经有模块支持想要的功能了。还是那句话,“几乎所有你想要的功能Python都有库实现了”。你的工作,就是像搭积木一样,把他们有机结合在一起实现你的业务逻辑。

对得,像搭积木一样实现你的网络爬虫,为什么不选择Python呢?以上我的回答希望对你有所帮助

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老男孩教育
2020-05-18 · 百度认证:北京一天天教育科技有限公司官方账号,教育领域创作者
老男孩教育
专注于Linux高级运维、Python开发、大数据培训,为您分享行业前沿的技术,有效的学习方法和有价值的学习资料。
向TA提问
展开全部
并不是说想要学习爬虫就必须学习python,其他语言也可以从事爬虫,不过对比其他语言来说,python更适合爬虫,要更加容易简单,所以建议学习python。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
time芽衣子
2020-04-17
知道答主
回答量:48
采纳率:33%
帮助的人:4万
展开全部
也不是一定,只是因为python更适合写爬虫,所以最好还是用python
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吾学习吾分享
2020-04-17 · 学一点,分享一点,多学习,多分享
吾学习吾分享
采纳数:46 获赞数:50

向TA提问 私信TA
展开全部
其他语言也可以爬,只不过python入门简单一些
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式