0

很久以前,我写了一个小python脚本来自动登录我办公室的无线网络。

这是代码:

#!/opt/local/bin/python
from urllib2 import urlopen
from ClientForm import ParseResponse

try:
if "Logged on as" in urlopen("https://MYWIRELESS.com/logon").read():
    print "Already logged on."
else:
    forms = ParseResponse(urlopen("https://MYWIRELESS.com/logon"), backwards_compat=False)
    form = forms[0]
    form["username"], form["password"] = "ME", "MYPASSWD"
    urlopen(form.click())
    print "Logged on. (probably :-)";
except IOError, e: print "Couldn't connect to wireless login page:\n", e

我最近换了电脑,它停止工作。现在,我得到了错误:

File "login.txt", line 4, in <module>
    from ClientForm import ParseResponse
ImportError: No module named ClientForm

这让我看起来好像没有安装一些包(ClientForm),所以我安装了它(sudo port install py-clientform),但我仍然得到同样的错误。有谁知道我做错了什么?

4

2 回答 2

1

还要检查您安装的软件包是否在 python 路径中:

>>> import sys
>>> sys.path
于 2010-04-06T21:19:34.150 回答
0

这适用于类似的东西:

(能够让站点使用wireshark发送数据。“用户”也可能是其他东西,例如“用户名”与“密码”相同。再一次,wireshark会对此有所帮助。也可以查看登录页面的来源。祝你好运! !!)

from urllib import urlencode
from urllib2 import Request, urlopen

req = Request('www.site.com',urlencode({'user':'userhere', 'password':'passwordhere'}))
open = urlopen(req)
于 2012-05-23T07:50:00.107 回答