python - beautifulsoup取得網頁內容的問題
習慣沉默
習慣沉默 2017-05-27 17:39:42
0
6
633
我要的是这个里面的内容
<p class="talk-article__body talk-transcript__body">

PYTHON程式碼:

neirong=soup.find('p',{'class':'talk-article__body talk-transcript__body'})

但是回傳的結果是空。這個選擇器是不是寫錯了?

習慣沉默
習慣沉默

全部回覆(6)
某草草

雷雷

https://www.crummy.com/softwa...

阿神

參考:https://www.crummy.com/softwa...中給予的說明,正確的使用方式是:
neirong=soup.find('p',class_='talk-article__body talk-transcript__body')

為了取得p包含的内容,进一步调用neirong.contents即可

刘奇

雷雷

刘奇

你從瀏覽器看到的內容有js動態產生的,用bs匹配不到,我發現看到的比較奇怪的class名基本上都是js生成的

给我你的怀抱

使用find_all吧,find不能用於class

曾经蜡笔没有小新
  • 個人覺得用BeautifulSoup來解析網頁的時候,如果樓主打算透過css特性來進行元素的定位的話,最好還是使用soup.select(),這個方法可以用class的value當參數也可以用標籤的attribute當參數,很方便,用來搜尋單一標籤最好用,同時參數支援css選擇器字串,例如:soup.select("#id > .class a.title").

  • soup.find()方法目前好像用的不多,不知道是不是BeautifulSoup4棄用了。現在一般只要出現find,就是find_all()等方法。
    以上詳細參考「超湯」的中文文件:http://beautifulsoup.readthed...

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!