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

文章最后有免费的Python资料,获取方式,关注头条号,私信回复资料获取下载链接。资料目录在文章底部,欢迎评论转发收藏下载。

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做爬虫的一个优势,只要能打开并正常浏览的网页,都可以用它来做爬虫,不用考虑各种反爬,可以说是非常实用的手段了!

下边有Python的基础学习资料,可以免费领取。

很多人在问,学习Python读什么书,这其实是一个非常通用的问题,学习分为三种方式:看书、上课,而读书学习是最实惠也是最高效的一种,小编整理了一些Python高分书籍给大家,从0基础到高级适合不同学习阶段,希望大家学习愉快。获取方式:点击小编头像,关注后私信回复“资料”即可下载。

Python爬虫技巧!网站有反爬?我们有selenium!相关推荐

  1. Python爬虫六:字体反爬处理(猫眼+汽车之家)-2018.10

    环境:Windows7 +Python3.6+Pycharm2017 目标:猫眼电影票房.汽车之家字体反爬的处理 ---全部文章: 京东爬虫 .链家爬虫.美团爬虫.微信公众号爬虫.字体反爬.Djang ...

  2. 一次Python爬虫实战,解决反爬问题!

    人生苦短,快学Python! 随着互联网的发展,Python的崛起,很多网站经常被外面的爬虫程序骚扰,有什么方法可以阻止爬虫吗? 阻止爬虫也就称之为反爬虫,反爬虫涉及到的技术比较综合,说简单也简单,说 ...

  3. Python爬虫入门教程 64-100 反爬教科书级别的网站-汽车之家,字体反爬之二

    文章目录 说说这个网站 今天要爬去的网页 反爬措施展示 爬取关键信息 找关键因素 处理汽车参数 关键字破解 入库操作 小扩展:格式化JS 思路汇总 关注公众账号 说说这个网站 汽车之家,反爬神一般的存 ...

  4. Python爬虫编程12——字体反爬

    什么是字体反爬 就是网页的制作者,他在发布他网页数据的时候.将其中一部分的字体变成乱码.即使你把网页的数据爬取下来,你也获取不到真实数据的样貌.这样就达到了一个反爬虫的目的. 如何解决字体反爬 1.下 ...

  5. Python爬虫:常见的反爬

    常见的反爬 爬虫流程 确定爬虫对象(爬哪个网页的数据) 找接口 有接口:直接对接口发送请求 成功(直接json解析) 失败就进入下一步 没有接口,直接进入下一步 用requests直接对网页地址发送请 ...

  6. Python爬虫学习第九天---反爬与反反爬

    反爬与反反爬 一.常见反爬手段和解决思路 1.服务器反爬原因 1.爬虫占总PV比例较高,这样浪费钱. 2.三月份爬虫:每年的三月份我们会迎接一次爬虫高峰期,有大量的硕士在写论文的时候会选择爬取一些往网 ...

  7. Python爬虫:猫眼电影反爬—动态字体处理(2020)

    2020年5月25日更新,在爬了几百条后发现,有少部分数据会出错,出错概率很小.目前推测其原因是因为欧氏距离在对于(-1,0)和(0,1)这种数据计算结果差异不大的原因.有精度需求的建议改用别的距离计 ...

  8. python爬虫什么网站都能爬吗_python如何爬取动态网站

    python有许多库可以让我们很方便地编写网络爬虫,爬取某些页面,获得有价值的信息!但许多时候,爬虫取到的页面仅仅是一个静态的页面,即网页 的源代码,就像在浏览器上的"查看网页源代码&quo ...

  9. Python爬虫编程11——JS反爬

    环境搭建 安装node.js 下载网站:Download | Node.jshttps://nodejs.org/en/download/ 参考网站:Node.js安装与环境配置_各自安好.的博客-C ...

  10. 从入门到入土:Python爬虫学习|实例练手|爬取百度翻译|Selenium出击|绕过反爬机制|

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

最新文章

  1. android核心机制之Zygote启动流程
  2. python网上编程课程-什么是Python编程课程
  3. Windows7 WIN 7 64位 环境编译6sv2.1版本的大气传输模型
  4. vs2012 boost配置
  5. h5页面嵌入android app时遇到的问题
  6. 世界坐标系到观察坐标系的变换步骤_shader观察(像机)矩阵变换的一己之见
  7. Swift入门基础知识
  8. Python 实int型和list相互转换 现把float型列表转换为int型列表 把列表中的数字由float转换为int型...
  9. 房友手机服务器安装文件,房友软件服务器地址
  10. html访问共享文件夹,教大家如何通过IP地址访问共享文件夹
  11. 方舟生存进化服务器存档位置,方舟生存进化怎么转移存档
  12. 第46届EC-Final总结
  13. ansible之判断语句jinja2模板的使用 与roles角色的配置使用
  14. html追加没有样式,html中append追加的表格元素和静态显示的元素样式不同?
  15. 格式化数据恢复怎么做?超实用的3种方法在这!
  16. 如何高效进行OA系统选型
  17. 飞思卡尔 Target Speed Change Detected - New Speed 16.00MHz解决方案
  18. OpenSocial 是什么
  19. 利用photoshop的动作功能实现图片批处理操作
  20. 如何用Serverless实现视频剪辑批量化、自动化与定制化

热门文章

  1. angularjs 服务详解
  2. this,super关键字的使用
  3. A - ACM Computer Factory - poj 3436(最大流)
  4. LINQ SQL分组取最近一条记录
  5. 堆栈应用(三):火车车厢重排
  6. 九眼合同智能审核系统运用NLPIR大数据技术进行核查
  7. 理解 JavaScript 的 async/await
  8. hadoo分布式安装
  9. vmware cli 修改磁盘为SSD
  10. 进程管理工具   htop