ip logger python語法
时间: 2024-09-07 19:02:35 浏览: 41
在Python中,要创建一个简单的IP日志记录器,你可以使用内置模块`socket`获取客户端IP地址,然后将其与其他信息(如日期、请求或其他自定义数据)一起存储到文件或数据库中。下面是一个基本的例子,展示如何在HTTP请求处理器中记录IP:
```python
import datetime
import socket
def log_ip(request):
# 获取客户端IP
client_ip = request.META.get('REMOTE_ADDR')
# 获取当前时间
current_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
# 如果IP地址是从代理服务器来的,可能需要处理X-Forwarded-For头
forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
if forwarded_for:
client_ip = forwarded_for.split(',')[0] # 取第一个IP地址作为原始IP
# 记录到日志
with open('ip_log.txt', 'a') as log_file:
log_file.write(f"{current_time} - {client_ip}\n")
# 将这个函数应用到你的web框架的请求处理流程中,比如Flask或Django
app.route('/')(log_ip)
阅读全文