2017-04-18 5 views
0

スプレッドシートからプリンタのIPアドレスとプリンタ名を取得する必要があります。このスプレッドシートの表示方法:スプレッドシートからプリンタIPとプリンタ名を取得する

Printer Model Printer Name   Current IP  MAC  New IP 
some printer  XRX0000AAF3230C  166.96.64.51  sad  127.0.1.1 
example   NPIB36BA6    172.18.25.126 sad  255.255.255.0 

IPアドレスとプリンタ名を取得し、それらを挿入する方法を教えてください。私は、次のコードでxlrdを使用してファイルを開いて読むことができました:

book = xlrd.open_workbook(r"C:\Users\Documents\My Forms\Printers 3-14-2017.xlsx", encoding_override="cp1252") 
sheet = book.sheet_by_name("3rd Floor") 
cols = sheet.ncols - 1 
rows = sheet.nrows - 1 
curr_row = -1 
while curr_row < rows: 
    curr_row += 1 
    row = sheet.row(curr_row) 
    print("Row: {}".format(curr_row)) 
    curr_cell = -1 
    while curr_cell < cols: 
     curr_cell += 1 
     cell_type = sheet.cell_type(curr_row, curr_cell) 
     cell_val = sheet.cell_value(curr_row, curr_cell) 
     try: 
      print("Type: {}\nValue: {}\n".format(cell_type, cell_val)) 
     except UnicodeEncodeError: 
      print("Type: {}\nValue: {}\n".format(smart_str(cell_type), smart_str(cell_val))) 

私がする必要がどのようなプリンタ名をつかむと、IPアドレス、のdict辞書および出力に挿入してあり、これをどのようにして成功させ、他の情報と「新しいIP」セクションをスキップできますか?

など、ゼロックスプリンタはXRXで始まるなど、HPのプリンタはNPまたはHPで始まる、私は、これはIPアドレスで動作することができ、正規表現を使用して考えたが、プリンタ名のパターンが離れて、​​プリンタの種類からありません..これについてのどんな助けも非常に高く評価されるでしょう、ありがとう。

+0

なぜパンダを使用しないのですか? –

+0

@ cricket_007パンダとは何ですか? – ParkSider

+0

http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_excel.html –

答えて

0

質問:私は何をする必要があることは、プリンタ名をつかむと、IPアドレス、DICに挿入してある...

my_dict['printer'] = sheet.cell_value(curr_row, 2) 
my_dict['IP address'] = sheet.cell_value(curr_row, 3) 

列は左からベース1をカウントされます右

関連する問題