mechanize checkbox控件无法工作python

2024-10-08 19:28:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图删除一个wikisite的2000多个垃圾邮件用户,所以我使用了mechanize和user merge and delete(mediawiki扩展)。我遇到的问题是,对于删除,mechanize必须勾选一个复选框,这似乎不起作用:

fi = open('users')

for user in fi.readlines():

    response3 = br.open('url')

    br.form = list(br.forms())[0]
    br['olduser'] = user
    br['newuser'] = 'Spambot'
    br.form.find_control(name='deleteuser').items[0].selected = True

    response4 = br.submit()

        print response4.read(), '\njust deleted ', user

fi.close()

我在stackoverflow和其他网站上看过很多帖子,都是这么说的

^{pr2}$

应该这么做。 我做错什么了?在


Tags: and用户brform垃圾邮件openmergedelete
2条回答

很晚了,但这对我有效。。。在

br.find_control("comment_status").items[0].selected = false

我没有指定(name=“comment_status”),只在引号中列出了它的名称。在

这确实不是一个解决方案,但应该可以帮助您调试并查看是否有错误。下面只打印要使用Mechanize填充的窗体上的所有控件。在

for control in form[0].controls:
    print control

如果您选择了正确的复选框,它应该如下所示:

^{pr2}$

我希望这能帮你找到正确的方向。在

相关问题 更多 >

    热门问题