这篇文章主要介绍了python爬虫中requests和selenium有什么区别,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
创新互联专业为企业提供仁布网站建设、仁布做网站、仁布网站设计、仁布网站制作等企业网站建设、网页设计与制作、仁布企业网站模板建站服务,十年仁布做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
requests代码:
#!/usr/bin/env python # -*- coding: utf-8 -*- import requests r = requests.get('https://api.github.com', auth=('user', 'pass')) print r.status_code print r.headers['content-type']
requests代码部分简单易懂。
selenium它是用于自动化Web应用程序的测试目的,但肯定不仅限于此。
对于一般网站来说scrapy、requests、beautifulsoup等都可以爬取,但是有些信息需要执行js才能显现,而且你肉眼所能看到的基本都能爬取下来,在学习中遇到了,就记录下来方便以后查看。
webdrive是selenium中一个函数:
from selenium import webdriver driver = webdriver.Chrome() driver.get('网址')
其中PhantomJS同时可以换成Chrome、Firefox、Ie等等,但是PhantomJS是一个无头的浏览器,运行是不会跳出相应的浏览器,运行相对效率较高。在调试中可以先换成Chrome,方便调试,最后再换成PhantomJS即可。
说一说 Selenium 的缺点:
1、速度慢。每次运行爬虫都打开一个浏览器,如果没有设置,还会加载图片、JS等等一大堆东西;
2、占用资源太多。有人说,把Chrome换成无头浏览器PhantomJS,原理都是一样的,都是打开浏览器,而且很多网站会验证参数,如果对方看到你是以PhantomJS去访问,会BAN掉你的请求,然后你又要考虑更换请求头的事情,事情复杂程度不知道多了多少,为啥学Python?因为Python简单啊,如果有更快、更简单的库可以实现同样的功能,为什么不去使用呢?
3、对网络的要求会更高。 Selenium 加载了很多可能对您没有价值的补充文件(如css,js和图像文件)。 与仅仅请求您真正需要的资源(使用单独的HTTP请求)相比,这可能会产生更多的流量。
4、爬取规模不能太大。
5、难。学习Selenium的成本太高,
通过比较我们可以看出,requests在代码方面简洁而且操作难度不大,相信很多小伙伴已经上手requests,而selenium的不足之处比较多,所以不推荐大家用来爬取数据。
感谢你能够认真阅读完这篇文章,希望小编分享python爬虫中requests和selenium有什么区别内容对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,遇到问题就找创新互联,详细的解决方法等着你来学习!
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款