回答編集履歴

2

修正

2020/05/17 14:50

投稿

tiitoi
tiitoi

スコア21956

test CHANGED
@@ -50,6 +50,8 @@
50
50
 
51
51
  with open("sample.txt") as f:
52
52
 
53
+ # read() でテキスト全部を読み込んで、splitlines() で改行で分割してリストとして返す。
54
+
53
55
  urls = f.read().splitlines()
54
56
 
55
57
 
@@ -58,9 +60,13 @@
58
60
 
59
61
  for url in urls:
60
62
 
63
+ # requests.get() でアクセスする
64
+
61
65
  r = requests.get(url)
62
66
 
63
67
  if r.status_code == 404:
68
+
69
+ # 404 ならリストに追加する。
64
70
 
65
71
  urls_404.append(url)
66
72
 
@@ -68,6 +74,8 @@
68
74
 
69
75
  with open("404.txt", "w") as f:
70
76
 
77
+ # "\n".join() でリストを改行で結合して1つの文字列にし、write() で書き込む
78
+
71
79
  f.write("\n".join(urls_404))
72
80
 
73
81
  ```

1

修正

2020/05/17 14:49

投稿

tiitoi
tiitoi

スコア21956

test CHANGED
@@ -31,3 +31,43 @@
31
31
  print(url)
32
32
 
33
33
  ```
34
+
35
+
36
+
37
+ ## 追記
38
+
39
+
40
+
41
+ 404 の URL をテキストファイルに出力するなら以下になります。
42
+
43
+
44
+
45
+ ```python
46
+
47
+ import requests
48
+
49
+
50
+
51
+ with open("sample.txt") as f:
52
+
53
+ urls = f.read().splitlines()
54
+
55
+
56
+
57
+ urls_404 = []
58
+
59
+ for url in urls:
60
+
61
+ r = requests.get(url)
62
+
63
+ if r.status_code == 404:
64
+
65
+ urls_404.append(url)
66
+
67
+
68
+
69
+ with open("404.txt", "w") as f:
70
+
71
+ f.write("\n".join(urls_404))
72
+
73
+ ```