【发布时间】:2014-08-01 18:33:25
【问题描述】:
各位爬虫们好,
我正在尝试在 Python 3.4 中使用 Selenium 打开网站的笨拙界面并从中获取我需要的信息。可悲的是,因为我每次都需要提交一个表单(它指向不同的页面而不打开一个新窗口),并且没有办法一次性获取所有信息。整个过程如下:
"For" all relevant fields: # as of right now, this cannot be a for loop
# because the elements are lost when I submit
(1) click on the necessary buttons (make it visible)
in order to select a field in the form
(2) submit the form
(3) get the necessary information from the new page
(4) go back to the first page
如果可能的话,我想找到一种方法,这种方法不需要我每次都点击按钮,也就是说,我想消除循环的步骤 (1) 并更改步骤 (4 ) 来简单地切换窗口。
为了澄清如何提交表单,代码中有一个 javascript 函数负责处理提交,但内置的 Selenium 方法 Element.submit() 仍然有效(所以我可以在提交按钮上 .click() 或我可以从表单中的任何元素.submit())。
为了让我的问题更清楚,有没有办法可以在新窗口/标签中打开表单输出,无论是通过插入 javascript 还是其他方式,这样我就不必重新加载第一页并点击它的按钮这么多次?
如果您想了解有关代码和网站的更多详细信息,请私信我,或者如果问题中缺少任何重要信息,请在答案或评论中告诉我。
【问题讨论】: