【问题标题】:Select first input box Mechanize选择第一个输入框 机械化
【发布时间】:2018-01-23 20:30:41
【问题描述】:

我正在编写一个可以与某些网站交互的 Python 应用程序。我需要选择网站中的第一个输入框,在不知道该输入框名称的情况下如何操作?我目前有

br = mechanize.Browser()
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
br.open("http://localhost")  
br.select_form(nr=0)
# ???

br.method = "GET"
response = br.submit()
print response

但我不知道下一步该做什么?我查看了各种网页,但似乎没有一个回答我的问题

【问题讨论】:

    标签: python mechanize


    【解决方案1】:

    试试:

    br.select_form(nr=0)
    inputName = br.form.find_control(nr=0).name
    br.form[inputName] = value
    

    【讨论】:

    • 感谢您提供此代码 sn-p,它可能会提供一些有限的即时帮助。 proper explanation would greatly improve its long-term value 通过展示为什么这是一个很好的解决问题的方法,并将使其对未来有其他类似问题的读者更有用。请edit您的回答添加一些解释,包括您所做的假设。
    • “name”是我必须定义的变量吗?
    • 抱歉,打错了!我已经修好了。
    【解决方案2】:

    也许您应该检查Selenium 是否有帮助?

    【讨论】:

    • 硒是一场噩梦
    • 不幸的是,python mechanize 也是一场噩梦。
    猜你喜欢
    • 2013-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-16
    • 2015-09-04
    • 2015-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多