質問編集履歴
2
書式の改善
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,42 +1,4 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
python初心者です。正規表現について質問です。
|
3
3
|
requestsで取得した値の特定の文字列の後の文字列を抽出し、それを行列に格納したいと考えています。
|
4
|
-
|
5
|
-
具体的にはrequestsで下記のような値を取得し、そこからnode1のみ抽出することが目標です。ですので、結果として「as1border1、as1border1、as1border2、as2border1、as2dept1」が出力されるようにしたいです。拙い文章で申し訳ございません。ご回答お願い致します。
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
### 発生している問題・エラーメッセージ
|
13
|
-
|
14
|
-
```
|
15
|
-
出力結果として、
|
16
|
-
('as1border1","node1interface":"GigabitEthernet0/0","node2":"as1core1","node2interface":"GigabitEthernet1/0"},{"node1":"as1border1","node1interface":"GigabitEthernet1/0","node2":"as2border1","node2interface":"GigabitEthernet0/0"},{"node1":"as1border2","node1interface":"GigabitEthernet0/0","node2":"as3border2","node2interface":"GigabitEthernet0/0"},{"node1":"as2border1","node1interface":"GigabitEthernet2/0","node2":"as2core2","node2interface":"GigabitEthernet1/0"},{"node1":"as2dept1","node1interface":"GigabitEthernet0/0","node2":"as2dist1","node2interface":"GigabitEthernet2/0')
|
17
|
-
このように出力されてしまう。
|
18
|
-
```
|
19
|
-
|
20
|
-
### 該当のソースコード
|
21
|
-
|
22
|
-
```python
|
23
|
-
import requests
|
24
|
-
import re
|
25
|
-
|
26
|
-
headers = {
|
27
|
-
'*************',
|
28
|
-
}
|
29
|
-
|
30
|
-
response = requests.get('http://*********', headers=headers)
|
31
|
-
|
32
|
-
for m in re.finditer(r'node1":"(.*)"',response.text):
|
33
|
-
print(m.groups())
|
34
|
-
```
|
35
|
-
|
36
|
-
### 試したこと
|
37
|
-
|
38
|
-
finditerをfor文で用いて、「node1":"」と「"」に挟まれる文字列を抽出しようとしましたが、requestsで取得した値の中で「node1":"」は一番最初に出現する部分、「"」は一番最後に出現する部分にマッチしてしまい、期待通りの結果を得ることができませんでした。
|
39
|
-
|
40
|
-
### 補足情報(FW/ツールのバージョンなど)
|
41
|
-
|
42
|
-
ここにより詳細な情報を記載してください。
|
4
|
+
拙い文章で申し訳ございません。ご回答お願い致します。
|
1
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -4,7 +4,6 @@
|
|
4
4
|
しかし、正規表現がうまく使えておらず想定している抽出をできていません。
|
5
5
|
具体的にはrequestsで下記のような値を取得し、そこからnode1のみ抽出することが目標です。ですので、結果として「as1border1、as1border1、as1border2、as2border1、as2dept1」が出力されるようにしたいです。拙い文章で申し訳ございません。ご回答お願い致します。
|
6
6
|
|
7
|
-
[{"node1":"as1border1","node1interface":"GigabitEthernet0/0","node2":"as1core1","node2interface":"GigabitEthernet1/0"},{"node1":"as1border1","node1interface":"GigabitEthernet1/0","node2":"as2border1","node2interface":"GigabitEthernet0/0"},{"node1":"as1border2","node1interface":"GigabitEthernet0/0","node2":"as3border2","node2interface":"GigabitEthernet0/0"},{"node1":"as2border1","node1interface":"GigabitEthernet2/0","node2":"as2core2","node2interface":"GigabitEthernet1/0"},{"node1":"as2dept1","node1interface":"GigabitEthernet0/0","node2":"as2dist1","node2interface":"GigabitEthernet2/0"}]
|
8
7
|
|
9
8
|
|
10
9
|
|