python - Masalah dengan beautifulsoup mendapatkan kandungan web
習慣沉默
習慣沉默 2017-05-27 17:39:42
0
6
674
我要的是这个里面的内容
<p class="talk-article__body talk-transcript__body">

Kod PYTHON:

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

Tetapi hasil yang dikembalikan adalah kosong. Adakah pemilih ini ditulis salah?

習慣沉默
習慣沉默

membalas semua(6)
某草草
neirong=soup.find_all('p',class_='talk-article__body talk-transcript__body')

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

阿神

Rujuk: arahan yang diberikan dalam https://www.crummy.com/softwa..., cara penggunaan yang betul ialah:
neirong=soup.find('p' ,class_ ='talk-article__body talk-transcript__body')neirong=soup.find('p',class_='talk-article__body talk-transcript__body')

为了获取p包含的内容,进一步调用neirong.contents

Untuk mendapatkan kandungan yang terkandung dalam p, hubungi selanjutnya neirong.contents#🎜🎜#
刘奇
neirong = soup.select('.talk-article__body.talk-transcript__body')
刘奇

Kandungan yang anda lihat daripada penyemak imbas dijana secara dinamik oleh js, dan ia tidak boleh dipadankan dengan bs. Saya mendapati bahawa nama kelas pelik yang saya lihat pada dasarnya dihasilkan oleh js

.
给我你的怀抱

Gunakan find_all, find tidak boleh digunakan untuk kelas

曾经蜡笔没有小新
  • Secara peribadi merasakan bahawa apabila menggunakan BeautifulSoup untuk menghuraikan halaman web, jika pengarang bercadang untuk menggunakan ciri CSS untuk meletakkan elemen, sebaiknya gunakan soup.select(). kelas sebagai parameter Anda juga boleh menggunakan atribut tag sebagai parameter, yang paling sesuai digunakan untuk mencari teg tunggal Pada masa yang sama, parameter menyokong rentetan pemilih css. soup.select("#id > .class a.title"). Kaedah

  • soup.find() nampaknya tidak banyak digunakan pada masa ini. Sekarang secara amnya selagi find muncul, ia adalah find_all() dan kaedah lain.
  • Untuk butiran, sila rujuk dokumen Cina "Super Soup": http://beautifulsoup.readthed...


Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan