我需要验证所有经销商是否在我公司的商店定位器中正确列出。为此,我正在考虑使用Python来抓取所有内容。
我能够使用Selenium找到搜索表单并填写城市和州的位置框。我的搜索半径有问题。设置值,代码如下所示:
代码:
<select id="radius" name="radius">
<option value="5">Within 5 miles</option>
<option value="10">Within 10 miles</option>
<option value="15">Within 15 miles</option>
<option value="25">Within 25 miles</option>
<option value="50" selected="selected">Within 50 miles</option>
<option value="100">Within 100 miles</option>
</select>
我想要做的是将一个选项的值设置为1000,以便在我输入的城市/州的千里之内进行搜索,以便同时返回所有可能的结果。
有没有办法用Selenium做到这一点?我检查了文档,但找不到更改值的方法,只检索它们。
我知道可以使用RoboBrowser库,但似乎我不能在它们之间使用相同的浏览器会话。
我是否错过了让我这样做的Selenium部分?或者是否有更好的图书馆来实现我的目标?我使用的是Python 3.6。谢谢!
答案 0 :(得分:0)
这在Selenium中是不可能的,因为这基本上意味着更改Web应用程序数据。但更重要的是为什么你在测试时需要它?
答案 1 :(得分:0)
您可以从选择框中选择一个值或下拉。但是改变HTML / Web页面中的值是不可能的,因为它是Web应用程序的一部分,无法通过Selenium Scripting进行控制。
答案 2 :(得分:0)
很多人都说过,Selenium不可能采取这种行动。在调查了其他一些解决方案后,我决定采用简单的答案:
我使用input()
冻结所有内容,同时我需要手动进行更改,然后继续返回控制台并按任意键继续。不优雅,但它以最小的输入完成工作。