爬虫小助手 | 自动录制浏览器动作生成 Selenium 脚本

4,946 阅读3分钟

相信很多小伙伴都用过 Selenium 来完成爬虫工作,今天就给大家带来一个神器,可以录制你的浏览器动作,然后直接生成 Selenium 脚本,是不是心动了?

1 Selenium 简介

Selenium 是为了测试而出生的。但是没想到到了爬虫的年代,它摇身一变,变成了爬虫的好工具。

让我试着用一句话来概括 Seleninm:它能控制你的浏览器,有模有样地学人类「看」网页。

那么你什么时候会要用到 Selenium 呢?

1、当你发现用普通方法爬不到想要的内容;2、当网站跟你玩「捉迷藏」,包含了太多的 JavaScript 内容;3、当你需要像人一样浏览的爬虫;

好了,Selenium 的其他这里不再赘述,本公众号已与 Google 达成战略协议,Google 可以免费提供 Selenium 的其他信息!

2 Katalon Recorder

Katalon Recorder 是个能够记录你使用浏览器的操作的东东。

相信很多小伙伴都知道一个叫「按键精灵」的东西,它帮我做了很多重复性的工作,这个 Katalon Recorder 插件 + Selenium 就和按键精灵是一个意思,记录你的操作,然后你可以让电脑重复上千遍。

2.1 安装

谷歌应用商店和火狐插件均可下载安装。

Katalon Recorder
Katalon Recorder

安装完成后,右上角会出现插件图标:

图标

2.2 使用

点击图标,会出现单独的 Katalon Recorder 窗口:

Katalon Recorder 窗口

其中:

①  工具栏 ②  用例管理器 ③  用例详情 ④  Log/Reference/Variable

点击窗口上的 Record,下面就会开始录制浏览器操作了。

这里我们打开拉勾网首页,并搜索「Python」,然后点击下一页。

进入网站时的这个动作也可以录制:

进入网站时的这个动作也可以录制!

每当点击的时候,插件就会记录下你这些点击。

录制动作

录制完成后,点击「Play」还可以进行动作回放,会重新自动执行刚刚录制的动作。

最后神奇的事情将要发生你可以点击 Export 按钮:

Export

可以根据录制的事件生成代码,这里不单单可以生成 Python 代码,Java、C#、Ruby 等,都不在话下。

脚本也可以导出

这里的脚本应该是自动化测试使用的,我们爬虫时只要截取其中的 selenium、driver 部分的即可。

driver.get("https://www.lagou.com/")driver.find_element_by_link_text(u"全国站").click()driver.find_element_by_id("search_input").click()driver.find_element_by_id("search_input").click()driver.find_element_by_id("search_input").clear()driver.find_element_by_id("search_input").send_keys("python")driver.find_element_by_id("search_button").click()driver.find_element_by_xpath(u"(.//*[normalize-space(text()) and normalize-space(.)='下一页'])[1]/following::span[5]").click()

3 总结

使用 Katalon Recorder 可以完成以下脚本的自动生成,但有时会不太好使,比如上面的下一页的点击,我运行代码时就不管用,还需要后续进行微调。

Katalon Recorder 还有很多其他方面的功能,其实人家是用来录制自动化测试脚本的,我们只是用了其中很少一部分功能,也算是抛砖引玉,有兴趣的同学快试试吧~

福利  最近搜集到 2018 黑马 Python、Java 最新就业班视频,后台回复「2018」即可获取下载地址。 推荐阅读

我的 Python 学习资源分享

1 行代码,实现微信消息发送

如何优雅地使用 rm 防止误删除?

Python 爬虫闯关(第三关)

教你用 Python 来朗读网页

Python 爬取「知识星球」

你还在用 format 格式化字符串?

Python 玩转 Excel

你的关注是我持续写作的动力!

戳下面的原文阅读,更有料