python - 如果结束标记为 <\\/p>,如何获取 <p> 内的值列表

标签 python beautifulsoup

这很奇怪。我尝试从标签结尾为 <p> 的网站上抓取内容。是 <\\/p>而不仅仅是</p> 。显然,每次我调用 soup.find_all('p') ,它不会返回任何值,而是 None。当我尝试 a 时没有任何问题或div因为两者都是结构良好的标签 </a></div>分别是结束标签。我不知道如何解决这个问题。

from urllib.request import Request, urlopen
from bs4 import BeautifulSoup


url = 'http://www.gmanetwork.com/news/story/656223/money/economy/iphone-worries-weigh-on-wall-street'
page = urlopen(Request(url, headers={'User-Agent': 'Mozilla/5.0'}))
data = page.read()
soup = BeautifulSoup(data, 'html.parser')
print(soup.find_all('p'))

编辑

按照建议,我发现了像 Splinter 这样的 headless 浏览器有点令人沮丧,因为该模块需要浏览器依赖项(如果我错了,请纠正我)。

最佳答案

你可以这样做:

import re
a = "<p> This is a text <\\/p>"
match = re.match("""^.*<p>(.*)<\\\\/p>.*$""", a).group(1)
print(match)

关于python - 如果结束标记为 <\\/p>,如何获取 <p> 内的值列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50784900/

相关文章:

python - 用 Cygwin 编译并从 Python 调用的 C 程序挂起

python - 如何在带有漂亮汤的div中选择一类div?

python - 使用 Beautiful Soup、Python/Django 的 502 错误网关

python - 使用 Python 的 Google App Engine 上的 key 或 ID

python - 删除文件中的重复记录

python - 如何用Python抓取网页渲染完成后的HTML内容

Python BeautifulSoup 抓取表

python - 将 Atom Hydrogen 连接到 Pipenv Shell 中的内核

python - 使用 Beautiful Soup 从 td 元素中提取 URL

Python请求未获取所有数据