<li><a class="atc-group atc-group-active" href="" data-url="/atc-kodlari/1">
<i class="fa fa-lg fa-pulse fa-spinner atc-group-loading" style="margin-right: 5px; display: none;"></i>
<span class="lists-rundown-no">(16)</span>
</a>
<i class="fa fa-lg fa-pulse fa-spinner atc-group-loading" style="margin-right: 5px; display: none;"></i>
<span class="lists-rundown-no">(16)</span>
<a class="atc-group atc-group-active" href="" data-url="/atc-kodlari/1">
<i class="fa fa-lg fa-pulse fa-spinner atc-group-loading" style="margin-right: 5px; display: none;"></i>
HERE!!
<span class="lists-rundown-no">(16)</span>
</a></li>
ここに書かれている部分に参加する必要があります!! Pythonで美しいスープを使用していますが、それは漂遊テキストであるため、セレクターなどはありません。それを取得することは可能ですか?
私が試したこと。
import requests
from bs4 import BeautifulSoup
r = requests.get('anywebsite')
source = BeautifulSoup(r.content,"lxml")
for child in source.select("#atc-wrapper > ul"):
for child2 in child.findChildren():
print(child2)
CSSセレクターa:last-of-type i
を使用し<i>
て、最後の要素内の要素を選択できます<a>
。次にfind_next()
、パラメータで使用しますtext=True
:
data = ''' <li><a class="atc-group atc-group-active" href="" data-url="/atc-kodlari/1">
<i class="fa fa-lg fa-pulse fa-spinner atc-group-loading" style="margin-right: 5px; display: none;"></i>
A - Gastrointestinal kanal ve metabolizma
<span class="lists-rundown-no">(16)</span>
</a>
<i class="fa fa-lg fa-pulse fa-spinner atc-group-loading" style="margin-right: 5px; display: none;"></i>
A - Gastrointestinal kanal ve metabolizma
<span class="lists-rundown-no">(16)</span>
<a class="atc-group atc-group-active" href="" data-url="/atc-kodlari/1">
<i class="fa fa-lg fa-pulse fa-spinner atc-group-loading" style="margin-right: 5px; display: none;"></i>
HERE!!
<span class="lists-rundown-no">(16)</span>
</a></li>'''
from bs4 import BeautifulSoup
soup = BeautifulSoup(data, 'lxml')
# select last i
i = soup.select_one('a:last-of-type i')
# select next text
print(i.find_next(text=True).strip())
プリント:
HERE!!
参考文献:
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加