Скрипт Python / openpyxl для определения значения ячейки и распечатки вывода из соседних ячеек - PullRequest
1 голос
/ 23 октября 2019

У меня проблемы с созданием сценария с использованием openpyxl - короче говоря, этот сценарий предназначен для чтения значения ячейки листов Excel и печати команд CLI для Juniper CLI.

Моя проблема в том, что я хочу автоматизировать процесс сценария, находя определенные строки «имя правила» и печатая следующие столбцы после (т. Е. Адреса источника / адреса назначения)

Как видно изскрипт ниже моей текущей работы вводит номер строки вручную, но если я могу автоматизировать его, обнаружив конкретные имена соглашений, такие как «StackOverflow 1, StackOverflow 2» и напечатав другой набор команд для правила 2, что было бы удивительно, я просто не уверено том, как это сделать.

Кто-нибудь может помочь.

import openpyxl 
from openpyxl import load_workbook


wb = load_workbook(input('Workbook name: '), data_only=True) 

ws = wb["Sheet name"]

rownumber = int(input('Row Number Of Rule: '))

name = (ws.cell(row=rownumber, column=1).value)
source = (ws.cell(row=rownumber, column=4).value) 
destination = (ws.cell(row=rownumber, column=5).value)
port = (ws.cell(row=rownumber, column=6).value) 
description = (ws.cell(row=rownumber, column=10).value)
fromzone = (ws.cell(row=rownumber, column=2).value)
tozone = (ws.cell(row=rownumber, column=3).value)

print ('set logical-systems security policies from-zone %s to-zone %s policy %s match source-address %s' %(fromzone,tozone,name,source))
print ('set logical-systems security policies from-zone %s to-zone %s policy %s match destination-address %s' %(fromzone,tozone,name,destination))
print ('set logical-systems security policies from-zone %s to-zone %s policy %s match application %s' %(fromzone,tozone,name,port))
print ('set logical-systems security policies from-zone %s to-zone %s policy %s description %s' %(fromzone,tozone,name,description))
print ('set logical-systems security policies from-zone %s to-zone %s policy %s then permit' %(fromzone,tozone,name))
print ('set logical-systems security policies from-zone %s to-zone %s policy %s then log session-init' %(fromzone,tozone,name))
...