【问题标题】:How to fill a textArea in an online form automatically using Python?如何使用 Python 自动填写在线表单中的 textArea?
【发布时间】:2011-12-21 17:56:50
【问题描述】:

我想知道如何自动填写在线表格。我已经对其进行了研究,并发现它可以使用 Python(我更想知道如何使用 Python,因为它是我知道的一种脚本语言),但是关于它的文档不是很好。这是我发现的:

Fill form values in a web page via a Python script (not testing)

即使是“mechanize”包本身也没有足够的文档:

http://wwwsearch.sourceforge.net/mechanize/

更具体地说,我想在此页面中填写 TextArea(地址): http://stevemorse.org/jcal/latlonbatch.html?direction=forward

所以我不知道我应该寻找什么?我应该寻找 textArea 的“id”吗? ?它看起来不像它有“id”(或者我很天真!)。我怎样才能“select_form”?

Python,网络专家,请帮助。

谢谢

【问题讨论】:

  • 编辑了我的答案。看看吧。

标签: python linux forms web-applications mechanize


【解决方案1】:

看看我对您链接的其他问题的回答是否有帮助: https://stackoverflow.com/a/5685569/711017

编辑: 这是您的示例的显式代码。现在,我现在没有安装mechanize,所以我无法检查代码。我检查的没有在线IDE也有。但即使它不起作用,也可以玩弄它,你最终应该会到达那里:

import re
from mechanize import Browser
br = Browser()
br.open("http://stevemorse.org/jcal/latlonbatch.html?direction=forward")
br.select_form(name="display")
br["locations"] = ["Hollywood and Vine, Hollywood CA"]
response = br.submit()
print response.read()

解释:br 模拟浏览器打开您的 url 并选择所需的形式。它在网站上称为display。输入地址的文本区域称为locations,我在其中填写地址,然后提交表单。无论服务器返回什么字符串response.read(),您都应该在其中找到您的经纬度。安装mechanize并检查一下。

【讨论】:

  • 我查看了您的答案。我一直无法弄清楚。我尝试了另一个名为 twill 的包,它显然是机械的包装。它稍微容易一些,但我不知道例如如何单击按钮(与提交相同吗?)
  • 点击按钮提交表单和提交一样,是的。
猜你喜欢
  • 2013-03-31
  • 2019-11-14
  • 2020-12-02
  • 2018-10-26
  • 2018-11-11
  • 2021-11-12
  • 2012-07-26
  • 1970-01-01
  • 2019-02-26
相关资源
最近更新 更多