attrs に検索するタグの属性の条件を指定でき、ここには関数を指定することができます。
関数を指定した場合、引数として属性名がキー、属性値が値の dict オブジェクトが渡されます。
属性が1つもないということは空のdict {}
が渡ってくるということなので、dict が空の場合は True、そうでない場合は False という関数を指定しておけばよいです。
python
1html = '''<p><span>ZZZ</span></p>,
2 <p>AAA</p>,
3 <p>BBB</p>,
4 <p>CCC</p>,
5 <p class="tags">YYY</p>,
6 <p class="list"><a href="/WWW/"><img alt="VVV" src="/UUU"/></a></p>,
7 <p class="tags">TTT<br class="sp"/>SSS</p>,
8 <p class="hoge"><a class="tagb" href="/socialmedia/">RRR</a></p>,
9 <p class="fuga"><a class="typesquare_tags" href="/chronicle/04/">4</a></p>,
10 <p class="capion typesquare_tags">XXX</p>'''
11
12from bs4 import BeautifulSoup
13
14soup = BeautifulSoup(html)
15vals = [t.text for t in soup.find_all('p', attrs=lambda attrs: not attrs)]
16print(vals) # ['ZZZ', 'AAA', 'BBB', 'CCC']
追記
単純に p タグの値だけ取り出すという意味でしたら、以下です。
python
1html = '''<p><span>ZZZ</span></p>,
2 <p>AAA</p>,
3 <p>BBB</p>,
4 <p>CCC</p>,
5 <p class="tags">YYY</p>,
6 <p class="list"><a href="/WWW/"><img alt="VVV" src="/UUU"/></a></p>,
7 <p class="tags">TTT<br class="sp"/>SSS</p>,
8 <p class="hoge"><a class="tagb" href="/socialmedia/">RRR</a></p>,
9 <p class="fuga"><a class="typesquare_tags" href="/chronicle/04/">4</a></p>,
10 <p class="capion typesquare_tags">XXX</p>'''
11
12from bs4 import BeautifulSoup
13
14soup = BeautifulSoup(html)
15vals = [t.text for t in soup.find_all('p')]
16print(vals) # ['ZZZ', 'AAA', 'BBB', 'CCC', 'YYY', '', 'TTTSSS', 'RRR', '4', 'XXX']
追記
python
1html = '''<p><span>ZZZ</span></p>,
2 <p>AAA</p>,
3 <p>BBB</p>,
4 <p>CCC</p>,
5 <p class="tags">YYY</p>,
6 <p class="list"><a href="/WWW/"><img alt="VVV" src="/UUU"/></a></p>,
7 <p class="tags">TTT<br class="sp"/>SSS</p>,
8 <p class="hoge"><a class="tagb" href="/socialmedia/">RRR</a></p>,
9 <p class="fuga"><a class="typesquare_tags" href="/chronicle/04/">4</a></p>,
10 <p class="capion typesquare_tags">XXX</p>'''
11
12from bs4 import BeautifulSoup
13
14soup = BeautifulSoup(html)
15
16vals = []
17for t in soup.find_all('p'):
18 # p タグの子でテキストがある要素のみ検索
19 p_text = t.find(text=True, recursive=False)
20 if p_text:
21 vals.append(p_text)
22print(vals) # ['AAA', 'BBB', 'CCC', 'YYY', 'TTT', 'XXX']