回答編集履歴
5
バイトモードで書き出し
test
CHANGED
@@ -32,7 +32,7 @@
|
|
32
32
|
|
33
33
|
messages = response.json()
|
34
34
|
|
35
|
-
with open('chat.log','a') as f:
|
35
|
+
with open('chat.log','ab') as f:
|
36
36
|
|
37
37
|
for message in messages:
|
38
38
|
|
4
文字列を結合してからエンコーディング
test
CHANGED
@@ -40,6 +40,6 @@
|
|
40
40
|
|
41
41
|
for info in info_pattern.findall(body):
|
42
42
|
|
43
|
-
f.write(info.encode('cp932')
|
43
|
+
f.write((info + '\n').encode('cp932'))
|
44
44
|
|
45
45
|
```
|
3
UTF8->CP932変更
test
CHANGED
@@ -40,6 +40,6 @@
|
|
40
40
|
|
41
41
|
for info in info_pattern.findall(body):
|
42
42
|
|
43
|
-
f.write(info.encode('
|
43
|
+
f.write(info.encode('cp932') + '\n')
|
44
44
|
|
45
45
|
```
|
2
エンコードの問題に対応(したつもり)
test
CHANGED
@@ -40,6 +40,6 @@
|
|
40
40
|
|
41
41
|
for info in info_pattern.findall(body):
|
42
42
|
|
43
|
-
|
43
|
+
f.write(info.encode('utf-8') + '\n')
|
44
44
|
|
45
45
|
```
|
1
改行が入っている場合の対応
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
こんな感じでいかがでしょうか。
|
1
|
+
こんな感じでいかがでしょうか。[info]から[/info]の間に改行が入っている場合でも動きます。
|
2
2
|
|
3
3
|
|
4
4
|
|
@@ -14,9 +14,13 @@
|
|
14
14
|
|
15
15
|
headers = {
|
16
16
|
|
17
|
-
'X-ChatWorkToken': '*********'
|
17
|
+
'X-ChatWorkToken': '*********'
|
18
18
|
|
19
19
|
}
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
info_pattern = re.compile(r'[info](.*?)[/info]', flags=re.DOTALL)
|
20
24
|
|
21
25
|
|
22
26
|
|
@@ -30,12 +34,12 @@
|
|
30
34
|
|
31
35
|
with open('chat.log','a') as f:
|
32
36
|
|
33
|
-
|
37
|
+
for message in messages:
|
34
38
|
|
35
39
|
body = message['body']
|
36
40
|
|
37
|
-
for info in r
|
41
|
+
for info in info_pattern.findall(body):
|
38
42
|
|
39
|
-
|
43
|
+
f.write(info + '\n')
|
40
44
|
|
41
45
|
```
|