在Python中发送表单请求

时间:2014-04-04 03:32:51

标签: javascript php jquery python button

我正在尝试在网站上模拟Python中的按钮单击,当单击该按钮时,它会在URL的末尾添加一些内容并返回false。如果我将这些内容添加到URL的末尾,它会将我带到正确的位置,但不会注册按钮是否单击,这就是为什么我认为我需要使用return false部分。

以下是按钮和按钮区域的确切代码。我不知道这实际上是在做什么,或者只是设置按钮并等待javascript实际执行。

<div class="contractLink"><button  type="button" value="upgrade to level 3"id="button533e24e4d7c79" class="green build" onclick="window.location.href = 'dorf1.php?a=16&amp;c=fb5ad7'; return false;">
    <div class="button-container addHoverClick">
        <div class="button-background">
            <div class="buttonStart">
                <div class="buttonEnd">
                    <div class="buttonMiddle"></div>
                </div>
            </div>
        </div>
        <div class="button-content">upgrade to level 3</div>
    </div>
</button>

这是单击按钮时运行的脚本的位置。我基本上想模拟通过python脚本点击的按钮,该脚本应该转到不同的URL并说“它已升级”(不是字面上说“它升级了”,而是让网站认为它是并开始升级过程)

<script type="text/javascript">
    window.addEvent('domready', function()
    {
    if($('button533e24e4d7c79'))
    {
        $('button533e24e4d7c79').addEvent('click', function ()
        {
            window.fireEvent('buttonClicked', [this, {"type":"button","value":"upgrade to level 3","name":"","id":"button533e24e4d7c79","class":"green build","title":"","confirm":"","onclick":"window.location.href = \u0027dorf1.php?a=16\u0026amp;c=fb5ad7\u0027; return false;"}]);
        });
    }
    });
</script>

感谢你的时间,任何帮助都会很棒。

1 个答案:

答案 0 :(得分:3)

这是使用Python的替代方法;这可能对那些希望进行按钮点击模拟而没有正常的后续操作的人有用。

假设要模拟的按钮的id是“button533e24e4d7c79”,jQuery库有触发方法来触发此按钮的点击(或任何支持的事件):

$("#button533e24e4d7c79").trigger("click"); // This will mimic the clicking of the button (programmatically) -- requires Jquery

我的理解是触发器方法将调用“click”事件并在事件处理程序处停止(即,不会跟随链接,不会继续提交表单等)。我还没有完全测试过,但这是我的理解。

如果需要完全模拟按钮单击,则jquery.simulate.js库(https://github.com/eduardolundgren/jquery-simulate/blob/master/jquery.simulate.js)提供模拟方法以允许跟踪链接等。

http://learn.jquery.com/events/triggering-event-handlers/的jQuery学习页面提供了正确的解释。