いくつかのCiscoネットワークデバイスにアクセスするためのPythonスクリプトを作成しようとしています。残念ながら、デバイスは同じように設定されておらず、奇妙な場所に表示されるバナーが表示されているものもあります。これらのバナーには、プロンプトと同じものがいくつかあるパターンが含まれている場合があります。
たとえば、ログインするとのプロンプトが表示される'hostname#'
ので、基本的にはpexpect('#')
Iを使用しますが、他の特定のプロンプトも処理する必要がある場合があります。可能なプロンプトのリストに加えて、タイムアウトを実際に用意し、それに応じて動作します。 'hostname>'
pexpect('>')
バナーが中央のどこかに表示されない限り、これは問題ありません。たとえば、ログインした後 ## Welcome ##
、プロンプトの直前に「」というバナーが表示される場合があります。pexpectに正規表現を無視するように指示できれば#.*\r
大丈夫だと思いますが、それが可能かどうかはわかりません。pexpectに文字列を無視させることは可能ですか、それともこれを回避するためのより良い方法がありますか?