pythonでBeautifulSoupを使いスクレイピングをしています。
CSSセレクターを抽出したいのですが、次の記述だと抽出できない部分があるので、soup.select(" ")の記述の仕方がお分かりになる方がいらっしゃれば教えてください。
次のようにpythonを記述しhtmlをスクレイピングしたところ、、、、
python
1・・・・・(省略) 2li_list = soup.select(" div > div > p ") 3for li in li_list: 4 a = li.a 5 if a != None: 6 name = a.string 7 href = a.attrs["href"] 8 9 print(name, ">", href)
次のhtmlスクリプト内の2重線より上までは抽出できましたが、
2重線より下の部分がどうしても抽出できません。
2重線より上までは抽出できているのでCSSセレクター抽出の仕方に問題があると考えてますが、解決方法お分かりなればご教示いただければ幸いです。
(なお、seleniumで要素を直接抽出した場合は抽出できたのですが、CSSセレクターで抽出したいです。。)
html
1<div id="search_result" class=“s”> 2v<div class="item_box first_item"> 3v<div class="item"> 4v<div class="box"> 5▼<p class="m"> 6v<a href=“p/d/999999”> 7<img src="https://www.○○○> 8</a> 9</p> 10</div> 11v<div class="pin_detail"> 12<p class="abc”>&abc;pq</p> 13▼<p class="title"> 14<a href="Zname/detail/999999999”>abc / 15abc</a> 16 17 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 18 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 19</p> 20<p class=“ptitle”>ABCABC</p> 21<p class="release_date">RA:2012/02/20</p> 22</div> 23v<div class="item_XYZ”> 24▼<p class=“XYZ_tei "> 25"○○:" 26▼<span class="text-red"> 27<strong>999</strong> 28</span> 29“&abc; " 30</p> 31v<p class="timesale mgn"> 32“note” 33 34<br> 35<span class="time">2019-12-08 16:00:00~2019–12–09 15:59:59#T 36</span> 37</p> 38▼<p class=“XYZ_normal"> 39“normal " 40%3D 41<span class="s”>\9999</span> 42</p> 43<p class=“XYZ2_tei”>99999</p> 44</div> 45</div> 46
※その他環境 python3,Mac OSX
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。