运维过程中,经常要从一堆文本中提取出ip地址,因此用flask web框架写了个从一堆文本中提取出ip地址,一个ip地址一行的程序。这里前端使用的是bootstrap前端框架。
如下所示(输入一系列文本,会从文本中提取出ip地址):
请输入文本的位置我输入:test192.168.0.2test192.168.0.3test192.168.0.4,得到的结果将会是
后端处理代码如下:
#从文件中提取ip地址@app.route('/get_ip_address', methods=['GET', 'POST'])def get_ip_address(): ips = [] if request.method == 'POST': iptext = request.form['iptext'] if iptext: p = re.compile(r'(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)') ips = p.findall(iptext) return render_template('get_ip_address.html', ips=ips)
前端页面的代码如下:
{% if ips %} {% for ip in ips %} { { ip }} {% endfor %} {% endif %}
处理过程如下:
前端有个页面让用户提交任何的文本,提交到后端使用iptext = request.form['iptext']进行接收提交的文本数据,使用正则把文本中的所有ip进行提取p = re.compile(r'(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)'),提取后会生成列表。前端如果发现有列表的话,就给予显示。
最后附上本人的网络课堂地址,如有兴趣请点击: