質問編集履歴

2

書式の改善

2020/11/27 07:31

投稿

eve
eve

スコア19

test CHANGED
File without changes
test CHANGED
@@ -4,80 +4,4 @@
4
4
 
5
5
  requestsで取得した値の特定の文字列の後の文字列を抽出し、それを行列に格納したいと考えています。
6
6
 
7
- しかし、正規表現がうまく使えておらず想定してる抽出をきていません。
8
-
9
- 具体的にはrequestsで下記のような値を取得し、そこからnode1のみ抽出することが目標です。ですので、結果として「as1border1、as1border1、as1border2、as2border1、as2dept1」が出力されるようにしたいです。拙い文章で申し訳ございません。ご回答お願い致します。
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
- ### 発生している問題・エラーメッセージ
24
-
25
-
26
-
27
- ```
28
-
29
- 出力結果として、
30
-
31
- ('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')
32
-
33
- このように出力されてしまう。
34
-
35
- ```
36
-
37
-
38
-
39
- ### 該当のソースコード
40
-
41
-
42
-
43
- ```python
44
-
45
- import requests
46
-
47
- import re
48
-
49
-
50
-
51
- headers = {
52
-
53
- '*************',
54
-
55
- }
56
-
57
-
58
-
59
- response = requests.get('http://*********', headers=headers)
60
-
61
-
62
-
63
- for m in re.finditer(r'node1":"(.*)"',response.text):
64
-
65
- print(m.groups())
66
-
67
- ```
68
-
69
-
70
-
71
- ### 試したこと
72
-
73
-
74
-
75
- finditerをfor文で用いて、「node1":"」と「"」に挟まれる文字列を抽出しようとしましたが、requestsで取得した値の中で「node1":"」は一番最初に出現する部分、「"」は一番最後に出現する部分にマッチしてしまい、期待通りの結果を得ることができませんでした。
76
-
77
-
78
-
79
- ### 補足情報(FW/ツールのバージョンなど)
80
-
81
-
82
-
83
- ここにより詳細な情報を記載してください。
7
+ 文章申し訳ございません。ご回答お願い致します。

1

修正

2020/11/27 07:31

投稿

eve
eve

スコア19

test CHANGED
File without changes
test CHANGED
@@ -9,8 +9,6 @@
9
9
  具体的にはrequestsで下記のような値を取得し、そこからnode1のみ抽出することが目標です。ですので、結果として「as1border1、as1border1、as1border2、as2border1、as2dept1」が出力されるようにしたいです。拙い文章で申し訳ございません。ご回答お願い致します。
10
10
 
11
11
 
12
-
13
- [{"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"}]
14
12
 
15
13
 
16
14