gpt4 book ai didi

javascript - 编写一个自动填写并提交网页表单程序

转载 作者:行者123 更新时间:2023-12-01 02:01:53 25 4
gpt4 key购买 nike

我正在尝试编写一个程序,可以在特定时间段自动填写并提交网络中的表单。

但我不知道如何以及从哪里开始。我在谷歌中搜索了这个,但只得到了非常笼统的答案,比如使用 JavaScript、Python。谁能告诉我应该先学哪些语言?

最佳答案

尽管事实上该线程的通用建议非常好,但它的范围相当广泛。我自己解决了这个问题,尽管我发布了一个功能齐全的示例,但它被版主删除了,尽管“理论上回答了问题”。

因此,对于其他想要解决此问题的人,您将需要执行以下操作:使用 Selenium 和 openpyxl,这是两个相对简单的模块,可以完美地执行此任务。

您将使用 selenium 打开网页,并检索您希望填充的相关 html 元素。如果您不熟悉 HTML,我建议您通过 xPath 查找元素。 Xpath finder google chrome 插件将使这变得非常容易。

driver.get() 和 driver.find_element_by_xpath() 将是您需要的函数。

我们将使用 openpyxl 来处理我们的 Excel 工作表。 “load_workbook()”将加载工作簿。然后,我们将使用“sheet = workbook.active”函数从工作簿中访问工作表。

我们现在可以打开网站并选择 Excel 工作表。

现在我们需要将单元格值分配给变量,以便我们可以填充 HTML 表单。我们为工作簿中的每个列分配一个变量。因此,如果 A 列包含first_names,我们可以通过编写“FNAME = Sheet['A']”将其分配给变量。现在我们有了一种引用列中单元格的方法,我们可以开始将数据输入到 HTML 表单中。

我们使用 Selenium 中的 .send_keys() 函数填充表单。

first_name.send_keys(FNAME.value)

.value 确保显示正确的值,因为有时 selenium 会打印单元格函数而不是值,我们不希望发生这种情况。

现在我们可以将 Excel 工作表中的值打印到 HTML 表单中,我们需要迭代每一行。我们用一个简单的 while 循环来做到这一点:

i = 1
x = 1
while x <= 50:
first_name.send_keys(FNAME[i].value)
i+=1
x+=1
driver.quit

一旦循环发生 50 次,驱动程序将退出,关闭浏览器并停止脚本。

在尝试自动化此操作时,您可能会发现有用的其他一些杂项:

driver.back()

time.sleep()

如果您想查看实际的工作示例,请随时私信我,因为显然在这里发布它不会对讨论做出贡献。

关于javascript - 编写一个自动填写并提交网页表单程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50487345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com