前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python爬虫技巧!网站有反爬?我们有selenium!

Python爬虫技巧!网站有反爬?我们有selenium!

作者头像
云飞
发布2018-09-14 10:50:22
1.7K0
发布2018-09-14 10:50:22
举报
文章被收录于专栏:云飞学编程

Selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。

Selenium:

框架底层使用JavaScript模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度测试应用程序。

  • 使浏览器兼容性测试自动化成为可能,尽管在不同的浏览器上依然有细微的差别。
  • 使用简单,可使用Java,Python等多种语言编写用例脚本。
  • 平时都在写爬虫代码,有的时候的遇到一些网站它们可不会乖乖就范哦,一般的都会有一些反爬措施的,再就是一些通过框架渲染出来的页面。
  • 对于这些网站,前者一般需要修改请求头、代理或者判断验证码等方可解决;后者由于网页信息是动态加载的, 常用的 Requests 库就显得有些无力了,拿不到渲染后的内容。

代码

安装 Selenium pip install selenium

下载驱动 :

大家自行搜索吧,网上很多的,我们选用火狐浏览器的驱动,最新版的好像不能使用,大家注意下,不行就下载次新的!下载好对应的浏览器驱动放到 Python 安装目录下就行

导入模块

创建Firefox对象:browser = webdriver.Firefox()

  • WebDriverWait() 这一行代码是传入一个WebDriver的实例,后面两个参数是超时时间和睡眠间隔
  • until() 是判断目标元素是否出现,代码中等待的是标签中 id="next" 的出现,网页中为下一页的标签,以此判断招聘信息已加载完毕
  • ps:若是无界面模式那一定要记得最后一行代码是必不可少的,不然浏览器你没关,你又看不见它这就很尴尬

运行效果如下:

参考文章:【learnaLanguage_YiZhou_Python:Selenium爬取动态网页】

selenium用途

通过上面的实例可以看到,通篇没有去考虑网站是否有反爬等等手段,这也是selenium做爬虫的一个优势,只要能打开并正常浏览的网页,都可以用它来做爬虫,不用考虑各种反爬,可以说是非常实用的手段了!

有喜欢的小伙伴可以私信我,一起交流哦!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云飞学python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Selenium:
  • 代码
  • 运行效果如下:
  • selenium用途
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档