如何使用python获取查看器的IP地址?

Kon*_*rad 3 python-2.7

只需用python文件做一个基本论坛,允许用户登录和/或创建一个帐户.我想我会多做一点,并让每个用户使用他们的IP地址登录,然后能够使用从他们的IP地址生成的唯一ID发布,就像大多数图像板一样.

我可以很容易地编写代码,但是我无法在不使用Flask的情况下找到如何获取用户的IP地址.

编辑:这是我刚检查的代码,它似乎正在工作

    #!/usr/bin/python
import md5, cgi,cgitb,codecs
def Maker():
    form=cgi.FieldStorage()#for use later
    a=form.keys()#for use later
    page = 'Content-type: text/html\n\n'
    page +='<html><head><title>Test Form</title></head>\n'
    from socket import gethostname, gethostbyname 
    ip = gethostbyname(gethostname())
    page+= ip
    return page
print Maker()
Run Code Online (Sandbox Code Playgroud)

编辑:该代码不工作,仍在寻求帮助

axb*_*unt 6

听起来你正在将它作为CGI脚本运行.用户的IP地址将在REMOTE_ADDR环境变量中os.environ["REMOTE_ADDR"].


o0r*_*s0o 5

我认为这可能有用

from socket import gethostname, gethostbyname 
ip = gethostbyname(gethostname()) 
Run Code Online (Sandbox Code Playgroud)

或者如果您使用CGI,您可以从REMOTE_ADDR环境变量中获取它