pythonで都道府県名の配列を作る
やったこと
- 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でタグの中を取って来たときの様子
整形後
ちっちゃいことからやってます