Py学习  »  Python

Python数据采集Selenium、PantomJS浅谈

Python中文社区 • 6 年前 • 883 次点击  

專 欄

yea yee,Python中文社区专栏作者,python三年,独立开发者,擅长flask,mongodb,pandas,bokeh,熟悉sklearn,pytorch。知乎专栏数据分析可视化,自带一波土木领域跨界python爱好者。独立开发网站http://intumu.com,微信小程序沁香农,海豹战队,数据分析文章若干。




Python中文社区招募2017年秋季专栏作者啦!申请邮件请按以下格式填好后发送至邮箱:pythonpost@163.com
  • 邮件标题:申请Python中文社区专栏作者

  • 个人简介:姓名或昵称,以及简单的自我介绍,涵盖个人的擅长领域等。

  • 写作能力的证明:请附个人与Python相关原创文章的链接,或者个人博客、知乎、简书地址等。

  • 您的联系方式:请附个人微信ID等。

一直以来我觉得用在运维的Selenium、PantomJS是一个重器,不到万不得已的时候不要祭出这个大杀器,但是涉及到JavaScript及Ajax渲染的时候,Requests就完全懵逼了!最近回过头来重新审视这货,这个重器用反倒轻便了很多。

1.安装Selenium、PantomJS

Selenium可以直接通过pip安装,PantomJS则时一个exe可执行文件,需要下载解压。在使用的时候指定exe的绝对路径即可。

2.Selenium、PantomJS基本设置

3.Selenium、PantomJS基本操作

如果你的网络和机子足够好,基本上就不用等待网页渲染,

否则,还需要等待,如果用time.sleep(),则有点笨拙,

或者用

其他driver内置函数,可以通过查看源代码或者在pycharm提示获取。

4.Xpath定位Html标签

其中element方法定位到是是单数,是直接定位到元素;elements方法是复数,这个学过英文的都知道,定位到的是一组元素,返回的是list队列。可参照Re函数中的findall理解。

5.完整例子

这个例子属于标准化操作,在实际中可以适当简化,并结合上面的Xpath定位完成


长按扫描关注Python中文社区,

获取更多技术干货!

    

Python 中 文 社 区

Python中文开发者的精神家园

合作、投稿请联系微信:

pythonpost

— 人生苦短,我用Python —
1MEwnaxmMz7BPTYzBdj751DPyHWikNoeFS




本文为作者原创作品,未经作者授权同意禁止转载


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/McfYJT349h
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/3601
 
883 次点击