2 核心功能设计与实现
信息发布是整个系统的核心功能,设计思路是采用Selenium工具集模拟人工所需要进行的操作来完成信息的发布。
Selenium是一个用于Web应用程序测试的工具,Selenium直接运行在浏览器中,就像真正的用户在操作一样。 Selenium 库里有一个WebDriver的API,它可以根据我们的指令,与页面上的元素进行交互 (发送文本、点击等),以及执行其它动作来完成相应新媒体平台上表单的填写以及提交。但是Selenium自己不带浏览器的功能,其需要结合第三方浏览器的使用,所以我们需要使用到浏览器驱动。不同的浏览器我们需要配备有不同的浏览器驱动。这就导致我们的软件只能够在配备指定浏览器的情况下,用户才能够使用到系统的核心功能。
在Selenium进行元素定位时,可能出现元素明明存在但是却提示你元素不存在,那极大可能是因为Selenium在页面还没有加载完成就对元素进行了定位。为了避免这种情况的发生,Selenium提供了两种等待的方式,一种是显示等待,另一种是隐式等待。显示等待是需要我们设置相应的等待条件以及最长等待时间,待条件满足要求后再进一步执行,而隐式等待则比较简单不需要设置相应的等待条件,只需要设置最长等待时间。两种等待设置的最大时间都是以秒为单位。显示等待需要明确等待的对象,而隐式等待会在WebDriver对象实例的整个生命周期起作用,它不针对某一个元素,是全局等待,即在定位元素时,需要等待页面全部元素加载完成,才会进一步执行。