やったこと
- beautiful soup4により方言辞書トップページから都道府県名とその地域について取って来た.
- splitによりスペースで区切られた文字列を配列boxに入れた.
- 5文字以下のものは別の配列prefに入れた.
メモ
- splitをspritとスペルミスしてエラーをはいた.
- スクレイピングして来たままの状態ではliが変わるごとに改行されたのでreplce("¥n"," ")して一旦SSVとした.
- ()内の説明文は5文字以上だったので,5文字に満たない都道府県名とはそれで判別した.
- appendで配列に追加した
参考
使用している方言辞書
今回書いたソースコード
試した跡も残しとく
#タイトルを引っ張てくる
import requests,bs4
# import re
res = requests.get('https://dictionary.goo.ne.jp/dialect/')
res.raise_for_status()
soup = bs4.BeautifulSoup(res.text, "html.parser")
elems = soup.find_all("ul",class_="list-simple-d")
box = []
pref = []
# print(elems)
# n = 1
for elem in elems:
# print(n)
prefname = elem.getText()
# print(type(prefname))
# pattern = "(.*) (.*)"
# d = re.search(pattern,prefname)
# print(d.group(1))
# print(prefname.sprit()[0])
# f = open(elem.getText(),'w')
# f.write(elem.getText())
# f.close()
# print(elem.getText())
# n = n + 1
# print(prefname.split(" "))
# box = prefname.split()
str = prefname.replace("¥n"," ").split()
# print(str)
# box.append(str)
for w in str:
box.append(w)
if len(w) < 5:
pref.append(w)
# print(w)
print(pref)
print(len(pref))
# box.append()
# for w in box:
# print(str(w) + "¥n")
#
# pref = []
# for i in box
# print(i)
# if box[i] < 5
# pref.append(box[i])
#
# print(pref)
beautiful soupでタグの中を取って来たときの様子
整形後

ちっちゃいことからやってます