python - 如何使用 BS4 打印类中的文本?
问题描述
html
<div class="QRiHXd">
"Some very secret link" <<< This is the content I want to print out / btw is a link
</div>
代码
import requests
import urllib
import bs4
url = 'https://www.reddit.com/' # There is actually another link
url_contents = urllib.request.urlopen(url).read()
soup = bs4.BeautifulSoup(url_contents, "html.parser")
div = soup.find('div', {'class_': 'QRiHXd'})
content = str(div)
print(content)
我需要打印类中的文本,但是当我尝试打印它时它返回:“无”,我不知道为什么。
解决方案
要从标签中获取文本,您可以使用.text
标签
from bs4 import BeautifulSoup
html_doc = """<div class="QRiHXd">Some very secret link</div>"""
soup = BeautifulSoup(html_doc, "html.parser")
div = soup.find('div', {'class': 'QRiHXd'})
print(div.text) # Some very secret link
推荐阅读
- java - Java 8. 线程同步问题
- symfony - Symfony表单主题冲突
- c# - 使用可以多次执行的应用程序启动特定线程一次
- javascript - SCSS 被 vue.config.js css.extract 破坏
- highcharts - 当我点击一个点时,如何阻止地图放大?
- python - 使用 websockets 从 watson 语音到文本的随机错误
- azure-devops - 通过 REST API 创建 Azure DevOps 构建定义
- php - 使用 Active Directory 在 IIS 上托管的基于 PHP 的网站上的编程访问控制?
- java - 我可以在 GridBagLayout 中为 JProgressBar 设置边界吗?
- javascript - Nativescript + Angular,如何在嵌套页面路由器插座中访问子路由?