Maison  >  Questions et réponses  >  le corps du texte

python - Problème avec BeautifulSoup pour obtenir le contenu d'une page Web

我要的是这个里面的内容
<p class="talk-article__body talk-transcript__body">

Code PYTHON :

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

Mais le résultat renvoyé est vide. Ce sélecteur est-il mal écrit ?

習慣沉默習慣沉默2702 Il y a quelques jours637

répondre à tous(6)je répondrai

  • 某草草

    某草草2017-05-27 17:41:42

    neirong=soup.find_all('p',class_='talk-article__body talk-transcript__body')
    

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

    répondre
    0
  • 阿神

    阿神2017-05-27 17:41:42

    Référez-vous aux instructions données dans : https://www.crummy.com/softwa..., la bonne façon de l'utiliser est :
    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

    Afin d'obtenir le contenu contenu dans p, appelez ensuite neirong.contents🎜

    répondre
    0
  • 怪我咯

    怪我咯2017-05-27 17:41:42

    neirong = soup.select('.talk-article__body.talk-transcript__body')

    répondre
    0
  • 怪我咯

    怪我咯2017-05-27 17:41:42

    Le contenu que vous voyez depuis le navigateur est généré dynamiquement par js, et il ne peut pas être mis en correspondance avec bs. J'ai trouvé que les noms de classes étranges que j'ai vus étaient essentiellement générés par js

    .

    répondre
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-27 17:41:42

    Utilisez find_all, find ne peut pas être utilisé pour la classe

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-27 17:41:42

    • Personnellement, je pense que lors de l'utilisation de BeautifulSoup pour analyser une page Web, si l'auteur envisage d'utiliser les fonctionnalités CSS pour positionner les éléments, il est préférable d'utiliser soup.select(). la classe comme paramètre. Vous pouvez également utiliser l'attribut de la balise comme paramètre, ce qui est très pratique. Il est préférable de l'utiliser pour rechercher une seule balise. En même temps, le paramètre prend en charge les chaînes de sélection CSS, telles que : soupe.select("#id > .class a.title")

    • . La méthode
    • soup.find() ne semble pas être beaucoup utilisée à l'heure actuelle. Je me demande si BeautifulSoup4 l'a dépréciée. Désormais, généralement, tant que find apparaît, il s'agit de find_all() et d'autres méthodes.
      Pour plus de détails, veuillez vous référer au document chinois de "Super Soup" : http://beautifulsoup.readthed...

    répondre
    0
  • Annulerrépondre