質問編集履歴

1

すべて

2020/02/21 07:54

投稿

Nero1129
Nero1129

スコア130

test CHANGED
File without changes
test CHANGED
@@ -1,10 +1,54 @@
1
+ 時間がなく、焦って質問したため語弊があったので全体的に変更します。
2
+
3
+
4
+
1
5
  ### 前提・実現したいこと
2
6
 
3
- スクレイピングでタグごとにHTMLを抽出したいです。
7
+ スクレイピングで本文のみを抽出したい
4
8
 
9
+
10
+
11
+ ### 使用するパッケージ
12
+
13
+ - requests
14
+
15
+ - Beautiful Soup
16
+
17
+ - ExtractContent // 本文抽出用のパッケージ
18
+
19
+
20
+
21
+ ### 手順
22
+
23
+ 1. requests で要求したサイトにアクセス
24
+
25
+ 2. Beautiful Soupでページ内のHTMLを取得 // ここまでは容易
26
+
5
- 下記のようなHTMLをget_text()スクレイピングすると、すべて改行されて抽出され意味がありません
27
+ 3. ExtractContentで本文を抽出 // ここで下手げに改行されたテキストがされるので、改行を消い。
28
+
29
+
30
+
31
+ ### 問題点
32
+
33
+ 1. 手順2.の後、str型に変更。
34
+
35
+ replace("\n", "")などで改行を消してから、手順3.ExtractContentに通すと、隣り合うpタグ同士が改行されず、1つの文章として出力されてしまうので、これを解消したい。(ここの質問の仕方が間違っていて語弊が生まれた模様。大変申し訳ありませんでした。)
36
+
37
+
6
38
 
7
39
  ```HTML
40
+
41
+ <p>
42
+
43
+ いつもありがとうございます。
44
+
45
+ かなり慣れてきて、痛みを感じにくくなって
46
+
47
+ きました。3週間くらい持つようになって来ました。
48
+
49
+ また来月もよろしくお願いします。
50
+
51
+ </p>
8
52
 
9
53
  <p>
10
54
 
@@ -22,26 +66,34 @@
22
66
 
23
67
 
24
68
 
25
- 個人的に行いたいのはタグごとにテキストを抽出出来たらなと考えています。
69
+ ```
26
70
 
27
- また、1サイトだけであれば手動で行えばいいすが、大規模処理を行いたいのでできる限り自動でさせたいす。
71
+ いつもありがとうございす。かなり慣れてきて、痛みを感じにくくなってきまし。3週間くら持つようになって来ました。また来月もよろしくお願しま。いつもありとうございます。かなり慣れてきて痛みを感じくくなってきまし。3週間くら持つようになって来まし。また来月もよろしくお願します。
72
+
73
+ ```
28
74
 
29
75
 
30
76
 
31
- ### 試した
77
+ うではなく。。。
32
78
 
33
- - 正規表現による改行、タブなどの除去を試みたのですが、すべての文字列が繋がってしまい意味がありませんでした。
79
+ ```
34
80
 
35
- - 1行ごに行おとしましたが、そもそも入れ子構造のHTMLなのでどのように行えばいいのかがわかりせんでした。
81
+ いつもありがとうございす。かなり慣れてきて、痛みを感じにくくなってきました。3週間くらい持つようになって来ました。また来月もよろしくお願いします。
82
+
83
+ いつもありがとうございます。かなり慣れてきて、痛みを感じにくくなってきました。3週間くらい持つようになって来ました。また来月もよろしくお願いします。
84
+
85
+ ```
86
+
87
+ として抽出したい。
36
88
 
37
89
 
38
90
 
39
- #### できたらいいなっていう草案
40
-
41
- 1. 1度HTMLを取得し、正規表現ですべての改行などを削除
42
-
43
- 2. もう一度、Beautiful Soupに通してテキストのみを抽出
44
91
 
45
92
 
93
+ ### やりたいこと。
46
94
 
47
- っていう感じ一応組んでみたものの全然きませんでした。
95
+ 手順2の時点で、同じタグ内だけあれば改行を消したいです
96
+
97
+ そうすれば、ExtractContentできれいな本文が抽出できると予想。
98
+
99
+ 再帰的にタグごとに改行を削除する方法を知りたいです。