beautifulsoup 相关问题

Beautiful Soup是一个用于解析HTML / XML的Python包。此软件包的最新版本是版本4,导入为bs4。

Python BS4 各种 HTML 标签

我正在尝试使用 BS4 在 Python 中进行网页抓取时达到特定值。网页为 https://openaccess.thecvf.com/CVPR2021?day=all 我能够通过标签 ptitle 获取标题并显示...

回答 1 投票 0

为什么我尝试从 GlassDoor 抓取时状态代码为 403?

我正在尝试从玻璃门上抓取工作信息。类似的代码结构对于 LinkedIn 来说效果很好,但我在这里遇到了问题。我收到的状态代码为 403,所以我猜我遇到了一些问题......

回答 1 投票 0

Pandas read_html 自动将任意一列转换为 str

我一直在尝试从网站上抓取表格,但由于某种原因,Pandas 会自动将每一列转换为字符串,因此某些值变得完全无用。例如,0.62 因为...

回答 1 投票 0

无法获取第二级下拉列表的多个选项。它仅适用于一个下拉选项

parse_button 项有问题,如果值有多个选项,我的脚本无法获取下拉列表。 下面是多种组合的场景 场景1 工作 尺寸 6楼...

回答 1 投票 0

Beautiful Soup 返回脚本语言而不是 HTML

我编写了一个Python程序来从几个购物网站上抓取数据,直到最近,该程序在这两个网站上都运行良好。 URL1 - https://www.auchan.pt/pt/alimentacao/alimentacao-bebe-e-crianca/papa-e-fa...

回答 1 投票 0

抓取新闻时无法打印链接

我喜欢页面上相关新闻文章的标题和链接列表。我可以只打印标题,但由于某种原因,链接仍然不清晰。 这是我的Python代码...

回答 1 投票 0

如何从网页抓取动态加载的商店 URL

我正在开发一个网络抓取项目,并尝试从以下页面中提取商店 URL 列表:https://maroof.sa/businesses。 这是我迄今为止尝试过的方法,但没有

回答 1 投票 0

从页面获取网址[关闭]

我如何从这个网站获取每个商店的网址: https://maroof.sa/businesses/ 我尝试了很多东西但无法得到它们

回答 1 投票 0

我无法从动态网站提取数据

这是任务的详细信息。 编写一个 Python 脚本,通过以下方式从以下网站 https://www.psychologytoday.com/us/therapyes 抓取数据 第 1 步 – 脚本将执行 1

回答 1 投票 0

Python 网页抓取:代码输出:汤未定义

我的雅虎股票网页抓取程序给我错误。 请在下面找到代码 def getdata(符号): headers= {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,如 G...

回答 1 投票 0

无法通过网页抓取在维基百科中找到特定表格?

我正在抓取以下维基百科页面:https://en.wikipedia.org/wiki/Eurovision_Song_Contest_2022。我已经能够从此页面中抓取另一个表格,但现在我想抓取“

回答 1 投票 0

无法通过网页抓取在维基百科中找到特定表格?

我正在抓取以下维基百科页面:https://en.wikipedia.org/wiki/Eurovision_Song_Contest_2022。我已经能够从此页面中抓取另一个表格,但现在我想抓取“

回答 1 投票 0

BeautifulSoup 抓取具有相同类名的标签

我是 BeautifulSoup 的新手。我正在使用 Python 和 bs 进行一些网络抓取,并且有两个段落具有相同的类名。 HTML如下: 2020 年 1 月 1 日星期三 00:01 ... 我是 BeautifulSoup 的新手。我正在使用 Python 和 bs 进行一些网络抓取,并且有两个段落具有相同的类名。 HTML如下: <p class='metadata'>Wed 1 Jan 2020 00:01 GMT</p><p class='metadata'>Category: <span>UK-News</span></p> 我正在尝试获取跨度标签内的类别名称(英国新闻)。当我抓取多篇文章时,我正在使用循环。这是我尝试过的一些事情: articles = soup.find_all('div', {'class' : 'article'}) for item in articles: #category = item.find('span') - prints out the same date #category = item.find('p', {'class' : 'metadata'}).text - prints every span tag in html #category = item.find('p', {'class' : 'metadata'}) - prints only the dates category = soup.select_one('span').get_text #prints out the same category name print(category) 这可能是一个小修复,但它真的让我很头疼,因为我觉得我已经尝试了一切。预先感谢。 您正在循环内的 soup 中搜索。将其更改为item.select_one: from bs4 import BeautifulSoup html_doc = """ <article> <p class='metadata'>Wed 1 Jan 2020 00:01 GMT</p> <p class='metadata'>Category: <span>UK-News</span></p> </article> <article> <p class='metadata'>Wed 2 Jan 2020 00:01 GMT</p> <p class='metadata'>Category: <span>World-News</span></p> </article>""" soup = BeautifulSoup(html_doc, "html.parser") articles = soup.find_all("article") for item in articles: category = item.select_one("p.metadata span").text # <-- use item.select print(category) 打印: UK-News World-News 试试这个: 对于文章中的项目: case1 = tag.select("div.ID").text case2 = tag.select("div.Id").next_sibling.text 打印(案例1,案例2)

回答 2 投票 0

如何在汤体内提取这个值

这是我的Python代码,它对API调用响应内容执行BeautifulSoup: 汤 = BeautifulSoup(resp.content, 'lxml') 如果我输出汤体,它看起来像这样: 这是我的 python 代码,它对 API 调用响应内容执行 BeautifulSoup: soup = BeautifulSoup(resp.content, 'lxml') 如果我输出汤体,它看起来像这样: <html> <body> .... <script src="/site_media/js/jquery/jquery.js" type="text/javascript"></script> <script nonce="" type="text/javascript"> var username_field = document.getElementById("id_username"); if(username_field.value){ document.getElementById("id_password").focus(); } else { username_field.focus(); } $(".toggle-password").click(function() { $(this).toggleClass("fa-eye fa-eye-slash"); var input = $($(this).attr("toggle")); if (input.attr("type") == "password") { input.attr("type", "text"); } else { input.attr("type", "password"); } }); var iam_login_link = document.getElementById("iam_login_link"); var iam_login_enabled = "False"; if (iam_login_enabled === 'True') { iam_login_link.style.display = '' } else { iam_login_link.style.display = 'none' } $('#iamLogin').on('click', function() { window.location.href = "/saml-idp/applebananapeach/iam_login/?SAMLRequest=BlaBlaBla"; }); </script> </body> </html> 我的问题是如何从汤中提取 window.location.href 链接? 认为在这种特定情况下不需要 beautiful soup,因为您必须从 JavaScript 中提取值,因此可以使用正则表达式: pattern = r'window\.location\.href\s*=\s*["\']([^"\']+)["\']' match = re.search(pattern, resp.content) if match: print(match.group(1)) else: print('not found')

回答 1 投票 0

从带有 Beautiful Soup 的标签获取文本,但其兄弟姐妹除外

我需要从(产品名称)获取除数量和价值之外的文本,但我没有找到任何代码。 我尝试在以下示例 H 中使用 soup.find 或 soup.select...

回答 1 投票 0

从带有漂亮汤的标签中获取文本,除了

1:EFURIX CREM 15 GR S VALEA <tbody> <tr> <td class="no-border" colspan="2"> <small> 1: EFURIX CREM 15 GR S VALEA <span class="pull-right"> </span> </small> <small> 1,00 x R$22,50 </small> <td class="no-border text-right"> <small> R$22,50 </small> </td> </td> </tr> <tr> <td class="no-border" colspan="2"> <small> 2: ASDRON XPE FR 100ML <span class="pull-right"> </span> </small> <small> 1,00 x R$50,32 </small> <td class="no-border text-right"> <small> R$50,32 </small> </td> </td> </tr> <tr> <td class="no-border" colspan="2"> <small> 3: DIAD 0,75MGC/ 2 COMP <span class="pull-right"> </span> </small> <small> 1,00 x R$5,00 </small> <td class="no-border text-right"> <small> R$5,00 </small> </td> </td> </tr> </tbody> 我需要从小标签(产品名称)中获取除数量和价值之外的文本,但我没有找到任何代码 我尝试使用 soup.find 或 soup.select 您可以使用带有伪类的 css selector 来始终获得第一个 <small>: soup.select('tr > td:first-of-type > small:first-of-type') 要根据您的示例获取所有标题,请使用 list comprhension: [title.get_text(strip=True).split(' ')[-1] for title in soup.select('tr > td:first-of-type > small:first-of-type')] 结果: ['EFURIX CREM 15 GR S VALEA', 'ASDRON XPE FR 100ML', 'DIAD 0,75MGC/ 2 COMP']

回答 1 投票 0

使用 BeautifulSoup 抓取世界指数表后出现空名称

我正在尝试从雅虎财经的世界指数表中抓取该指数的股票代码和全名:https://finance.yahoo.com/world-indices/ 这是我目前拥有的代码: 来自 BS4 ...

回答 1 投票 0

使用Python和Beautifulsoup用<h2>标记返回的文本,其中原始网页中存在标题2

我正在从网站上抓取一篇文章,并希望尽可能保留文本的原始格式。我的想法是让 beautifulsoup 返回所有文本,并使用一些 Python 代码来输入...

回答 1 投票 0

python 报废网站数据提供空值

我正在尝试废弃 MLB BOX 分数和逐场比赛信息。 导入请求 从 bs4 导入 BeautifulSoup url =“https://www.sportsnet.ca/baseball/mlb/games/2618275/” 回应 =

回答 1 投票 0

从包含java的网站中提取网站数据

我如何从该网站提取数据: https://maroof.sa/businesses/details/229217 我是刮擦初学者。

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.