teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

機能2を修正しました。

2019/06/25 09:00

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -96,12 +96,15 @@
96
96
  for tag in soup.find_all("h3","shisetsu_name_s"):
97
97
  link = tag.find("a")
98
98
  url = link.get("href")
99
+ print(url)
99
100
  for s_tag in soup.find_all("h3","shisetsu_name"):
100
101
  s_link = s_tag.find("a")
101
102
  s_url = s_link.get("href")
103
+ print(s_url)
102
104
  links = soup.find_all("a","fa_name")
103
105
  for link in links:
104
106
  l_url = link.get('href')
107
+ print(l_url)
105
108
  else:
106
109
  break
107
110
  num += 1

1

動作するソースコード、動作しないソースコードをまとめました。

2019/06/25 09:00

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -45,7 +45,6 @@
45
45
  else:
46
46
  break
47
47
  i += 1
48
- get_href()
49
48
 
50
49
 
51
50
  【機能2】
@@ -70,4 +69,73 @@
70
69
  ```
71
70
 
72
71
  【機能1】【機能2】はそれぞれ動作するのですが、一緒にすると、エラーも表示されなくなってしまいました。
73
- わかる方、教えていただけると幸いです。
72
+ わかる方、教えていただけると幸いです。
73
+
74
+
75
+
76
+ ### 動作するソースコード【機能1】
77
+ ```jupyter
78
+ import sys
79
+ import requests
80
+ import re
81
+ import urllib.request, urllib.error
82
+ from bs4 import BeautifulSoup
83
+
84
+ def get_href():
85
+ i = 1
86
+ num = 2
87
+ while i < 48:
88
+ for num in range(1, 300):
89
+ zero_i = str(i).zfill(2)
90
+ base = 'https://www.judo-ch.jp/sekkotsuinsrch/{}/list/{}/'
91
+ url = base.format(zero_i,num)
92
+ res = requests.get(url)
93
+ if res.status_code == 200:
94
+ html = requests.get(url)
95
+ soup = BeautifulSoup(html.content,"html.parser")
96
+ for tag in soup.find_all("h3","shisetsu_name_s"):
97
+ link = tag.find("a")
98
+ url = link.get("href")
99
+ for s_tag in soup.find_all("h3","shisetsu_name"):
100
+ s_link = s_tag.find("a")
101
+ s_url = s_link.get("href")
102
+ links = soup.find_all("a","fa_name")
103
+ for link in links:
104
+ l_url = link.get('href')
105
+ else:
106
+ break
107
+ num += 1
108
+ else:
109
+ break
110
+ i += 1
111
+ get_href()
112
+ ```
113
+
114
+
115
+ ### 動作するソースコード【機能2】
116
+ ```jupyter
117
+ import sys
118
+ import requests
119
+ import re
120
+ import urllib.request, urllib.error
121
+ from bs4 import BeautifulSoup
122
+
123
+ def get_soup(url):
124
+ """URLのSoupを取得する"""
125
+ html = requests.get(url)
126
+ return BeautifulSoup(html.content, "html.parser")
127
+
128
+ def scraping_gh():
129
+ """Software Design の情報を取得"""
130
+ soup = get_soup("https://www.judo-ch.jp/sekkotsuinsrch/13/13201/030637/")
131
+
132
+ # 整骨院の名称
133
+ res_p = soup.find("span", class_="name")
134
+ res = res_p.find(text=re.compile(""))
135
+ print(res.string)
136
+ # ホームページのURL
137
+ res_p = soup.find("p", class_="lnk_url")
138
+ res = res_p.find(text=re.compile(""))
139
+ print(res.string)
140
+ scraping_gh()
141
+ ```