编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

Selenium+PhantomJS加载ajax数据(selenium 加载完成)

wxchong 2024-09-03 02:15:59 开源技术 9 ℃ 0 评论

如果您对相关知识有兴趣,欢迎加群(526929231)与大神一起共同学习交流

如今的网站有两种。一种是同步加载的。另一种是异步加载的,也即我们常说的用ajax。对于那种同步加载的网站,普通的爬虫程序轻轻松松的就能搞定。但是对于那种异步请求数据的网站,就不能走寻常路了。对于这种情况,通常的解决方案是使用selenimu+PhantomJS组合来完成。有的童鞋可能还不是很了解这两者之间的关系,接下来做个简单介绍:

  1. selenium:是一个web的自动化测试工具,最初是为网站自动化测试而开发的.我们可以通过他使用代码来操作浏览器以及其中的网页元素。selenium支持绝大部分的浏览器,以及类似PhantomJS这种无界面的浏览器。

  2. PhantomJS:是一个基于Webkit的“无界面”(headless)浏览器。他除了没有界面,其他功能跟普通浏览器是一样的。也正因为他没有界面,因此运行效率比普通浏览器要高。

PhantomJS安装:

从http://phantomjs.org/下载合适自己电脑版本的PhantomJS。然后根据自己的操作系统配置其环境变量。比如mac或者linux
,可以把PhantomJS放置在/usr/bin或者/usr/local/bin中。而windows用户也可以在我的电脑->属性->环境变量中配置好PhantomJS所在的路径。

selenium使用介绍:

  1. 安装:sudo pip install selenium。

  2. 使用以下代码做个简单介绍.这篇教程不打算对selenium做细节的讲解。如果想要详细了解使用细节,可以访问http://selenium-python.readthedocs.io/或者加我企鹅号(2156600937)我索要教程:

获取豆瓣热门排行版的电影数据

豆瓣热门电影的数据,不是一次性加载的。而是通过点击加载更多的方式获取更多数据的。因此我们不能使用传统的方式爬数据。这里我们使用selenium+PhantomJS的方式爬取异步加载的电影:

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表