社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python数据采集Selenium、PantomJS浅谈

Python中文社区 • 7 年前 • 1075 次点击  

專 欄

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
 
1075 次点击