Pythonでスクレイピングを勉強しています。1ページごとの値を取得したかったのですが、class名などが被りいらない値まで取ってきやがりました。そこで今回は、「1ページ毎の配列をとりあえず全部結合させて、正規表現でいる部分だけ略奪作戦」をやっていきたいと思います。
工程
- 配列内の要素を全て結合させる
- 結合させたやつに、正規表現をかける
- 正規表現にmatchした部分だけ採取
このJapanだけが欲しい
list = ['非表示', '非表示', '非表示', '非表示', '非表示', 'Japan', '非表示']
配列内の要素を全て結合させる
list_join = (''.join(list))
print(list_join)
# 非表示非表示非表示非表示非表示Japan非表示
正規表現をかけ、いる部分だけ採取
list_join = (''.join(list))
compile = re.compile('[a-zA-Z]+')
print(''.join(compile.findall(list_join)))
# Japan
参考
https://murashun.jp/blog/20200113-20.html
https://note.nkmk.me/python-re-regex-character-type/