Python – 爬虫实现网页自动登录、点击与页面的跳转

近段时间,因熊孩子沉迷于电视而致命学习成绩下降,遂有了在不影响家里老人正常观看电视的情况下对电视进行限制的需求,经过思索后准备利用爬虫技术来实现,即在熊孩子放学时自动登录网管交换机来对机顶盒进行限速,熊孩子上学后再解除针对机顶盒的限速。`

现在的熊孩子岁数不大却非常聪明,可以自己开电视并换台寻找喜爱的电视节目,之前采用拨网线的暴力方法来禁止熊孩子无休止的观看电视,后因经常拨网线后忘了重新插上而导致老人无法看电视,遂此方法被废弃………

好在经过思索,发现家里的 IPTV 连在了 Netgear 网管交换机上,我们可以在交换机上对 IPTV 端口进行限速,以使电视无法正常观看。

说起爬虫,首先想到的就是 Python,经过一翻google,确定了使用Selenium、Firefox/Chrome来实现爬虫功能。

什么是Selenium

Github-Selenium

Selenium 是一个用于 Web 应用程序的测试工具。Selenium 直接调用浏览器来进行测试,就像真正的用户在操作一样。它支持 IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,HtmlUnit,phantomjs,Android(需安装 Selendroid 或 appium),IOS(需安装ios-driver 或 appium)等。

Selenium 支持 C# / JavaScript / Java / Python / Ruby 开发语言。它使用 WebDriver 来操作浏览器进行网页测试。

在爬虫中 Selenium 主要用来解决 JavaScript 的渲染问题。

什么是 WebDriver

Webdriver 是一个用来和浏览器进行交互的编程接口,通过它可以操作浏览器打开或关闭、发送鼠标点击、模拟键盘输入等等。

W3C 定义了 WebDriver 规范。现在最流行的 WebDrver 为开源软件 Selenium WebDriver。

WebDriver 包含多个模块:

  1. 支持多编程语言
  2. 自动化框架,提供网页的元素查找、点击、输入等自动化功能,减少重复编码。
  3. JSON 协议,自动化框架与浏览器驱动的中间层,它提供了跨平台跨语言的能力。
  4. 浏览器驱动,通过它来调用浏览器。
  5. 浏览器,对网页进行渲染。

安装

Selenium

WebDriver

  • ChromeDriver
  • Firefox 的 Webdriver 名为,自github-geckodriver下载。

Selenium 的使用方法

这里我们使用 Python 语言。

浏览网页

先来一段爬虫界的。

  1. 声明浏览器

打开 shixuen.com
3. 关闭浏览器,。

模拟鼠标点击

我们再添加点新功能,打开后,点击文章。

依旧先看代码

关键代码为,搜索文字内容为的链接,找到后返回此节点的对象。

搜索指定元素

如网页节点的代码:

  • 以 进行搜索,
  • 以进行搜索,
  • 以进行搜索,
  • 以进行搜索,
    :从根节点开始进行搜索
    :搜索所有节点
    :搜索本节点下的子节点

点击此节点

代码 来执行鼠标点击操作。

开发者工具

上面的代码算是爬虫界的吧。

登录并配置 Netgear 网管交换机

下面,进入本文的正题,登录并配置 Netgear 网管交换机。依旧不废话,先上代码。

来源:haven200

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年10月19日
下一篇 2019年10月19日

相关推荐