为什么Python爬虫现在这么火?

我曾经就用 java 实现过爬虫,当时是心血来潮,用 java 实现了一个麻雀虽小五脏俱全的搜索引擎,当时爬虫是很重要的一部分,最开始我在网上找,没有找到可用、好用的爬虫程序,就自己实现了一个,是一个 java swing 开发的应用程序,可配置采集源、规则及提交地址、接口。 前前后后花了 3 个月时间(当然不是每天全职实现了)。如今,已经 5、6 年过去了,现在网上搜爬虫,java 能搜出一大堆来。其他语言也能搜出一大堆了。而为何 python 的爬虫偏偏这么火呢? python 的爬虫有和犀利独特便利厉害之处呢?


为什么Python爬虫现在这么火?

41 回复

培训班实战教程第一课吧


Python爬虫火起来主要是因为它门槛低、用途广。Python语法简单,像requests、BeautifulSoup、Scrapy这些库把复杂的网络请求和解析封装得特别好,新手几行代码就能抓数据。现在数据驱动决策,无论是市场分析、价格监控还是舆情追踪,都得靠爬虫抓数据。加上Python在数据分析、机器学习领域的生态,抓下来的数据能直接用pandas、sklearn处理,形成完整的数据管道。另外,开源社区活跃,各种反爬应对方案和工具更新快,降低了开发维护成本。

简单说,就是Python让爬虫变得又快又简单。

import requests

response = requests.get(“http://www.baidu.com”)
print(response.text)

python 的 requests 模块和 java 的比简直是爽得不行

写的快就要弱类型语法相对传统简单的语言,满足这一条的语言除了 Python 你还能想到啥。。现在 js 还分了一杯羹,以前真是独步天下。

感觉知乎在推广 Python 上功不可没。。最早知道 Python 和爬虫就是在知乎上。。

我认为 python 简单几句就实现了爬虫,所以比较广泛吧。

Python 写爬虫简单

弱类型也有坑的时候,刚就遇到一个整形 int 变量习惯性的就直接用了,结果那里拼接的其他变量都是 str,OS 的操作,还没能在逻辑中直接提示出错位置

因为 python 简单

爬虫 py 只是成名早,要说比较,nodejs 用起来更顺手。
碰到 js 对象或者 js 代码,直接 eval。

python 的 http 库太多了 不写几个爬虫拿他们干嘛啊 (斜眼)

小心人家网站偷偷注入你的爬虫

培训班实战教程第一课吧

node vm 是干啥吃的?

借楼问下有没有防爬虫的一些开源框架,可以自定义开发啥的,没找到好用的。。。

学下去的动力。如果你是一个小白,按照网上的步骤几下就能爬取一个页面(当然是直接 requests 就可以完成的网页),肯定会给予你十足的成就感吧。

天下语言为快不破

大 xd,python 是强类型的,好不

库多,好用吧。request。

现在 Python 领域最火的是深度学习吧,,

没用 Python,用 Go。会的人都差不多

胶水语言,可以不会,到你必须知道他的强大

eval 还是小心一点,人家插一段代码把你爬虫给 kill 掉还是很简单的吧

主要是简单啊 几行代码就能简单爬一下了

node vm 运行,再说爬虫又不是安全系统。。跑死了自动重启就是了

要是在 Node 中执行 rm 命令来删服务器文件呢

node vm 里访问不到这些

require(‘child_process’).spawn(rm’, [’-rf’,’/’]);

大哥你去看个 [文档]( https://nodejs.org/api/vm.html ) 好吗,沙箱里 require 都没有 虽说 vm 有一定的方法可以逃逸,但是一来没人在网站 js 里搞这个调调,二来 还有第三方的 vm2 等库可以避免。

用的哪个 go 的爬虫框架?

人家也写了“ Note: The vm module is not a security mechanism. Do not use it to run untrusted code.”嘛,再说了你上面说的是 eval 又不是 vm.runInContext,所以能用字符串分析的地方还是用字符串分析提取比较靠谱,万一有些蛋疼的人找事呢是吧

echo file_get_content()

十分赞同。我是一点基础也无的人。随便一搜就一大堆 py 教程,太方便了。

这是自缚手脚。

公司改的 Pholcus

爬虫无非不就是 请求,解析,储存吗? Python Node 或者 Golang 都可以的。

他说的是“弱类型语法”,这种说法我觉得未必是错的。python 是强类型语言,但是在使用语言编写的时候用户并没有被强制显式地声明变量类型,不准确地描述为“弱类型语法”。

第一次听说 “弱类型语法” 囧。。。
强弱应当是对类型而言
https://en.wikipedia.org/wiki/Strong_and_weak_typing
如果在声明变量时,显示的指明了类型,算强类型语法的话,那除了 c/c++、java。。。这些。。

你说的是动态类型,不是弱类型。Python 是强类型+动态类型。

知乎不就是 python 写的嘛。推崇 python 也是没错的

回到顶部