美丽的汤不等待页面完全加载

2024-02-15

因此,使用下面的代码,我想打开一个公寓网站 URL 并抓取网页。 唯一的问题是 Beautiful Soup 不会等到整个网页渲染完毕。 公寓在加载到页面上之前不会在 html 中呈现,这需要几秒钟的时间。我该如何解决?

from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup

my_url = 'https://xxxxx.com/properties/?sort=latest'

uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()

 page_soup = soup(page_html, "html.parser")

 containers = page_soup.findAll("div",{"class":"grid-item"})
#len(containers) is empty since the contents haven't been loaded yet!

如果您想等待页面完全加载其数据,您应该考虑使用 selenium,在您的情况下,它可能如下所示:

from bs4 import BeautifulSoup
from selenium.webdriver import Chrome
from selenium.webdriver.chrome.options import Options

url = "<URL>"

chrome_options = Options()  
chrome_options.add_argument("--headless") # Opens the browser up in background

with Chrome(options=chrome_options) as browser:
     browser.get(url)
     html = browser.page_source

page_soup = BeautifulSoup(html, 'html.parser')
containers = page_soup.findAll("div",{"class":"grid-item"})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

美丽的汤不等待页面完全加载 的相关文章

随机推荐

  • 如何在 React js - JSX 中动态创建输入文本字段?

    我对 ReactJS 还很陌生 我遇到了一个场景 我必须创建 6 个彼此非常相似的输入字段 现在我的类渲染方法中有类似的东西 render return div p p div
  • 如何使“旧式”异步方法可等待

    如果我有一个带有回调的异步方法 MyMethodAsync
  • 如何从 jar 库创建 OSGi 包?

    如何从 jar 库创建 OSGi 包 如果您使用的是 eclipse 有一个向导 它允许您选择多个 jar 库并创建包含这些 jar 的插件项目 即 OSGi 包 你可以在这里找到它 File gt New gt Other gt Plug
  • 从 PL/SQL 调用/使用 JMS

    是否可以从 PL SQL 调用 使用 JAVA 消息服务 JMS 我知道我们可以从 pl SQL 调用 java 但是调用 java 与调用 JMS 队列或 JMS 主题不同 因为 JMS 依赖于 JNDI 资源命名 当我们使用基于 JND
  • Python 大量迭代失败

    我写的简单蒙特卡罗 计算 http math fullerton edu mathews n2003 montecarlopimod htmlPython 程序 使用多处理模块 它工作得很好 但是当我为每个工作人员传递 1E 10 次迭代时
  • Spring MVC ExceptionHandler 实现平静和正常

    我想处理正常请求和休息 ajax 请求的异常 这是我的代码 ControllerAdvice public class MyExceptionHandler ExceptionHandler Exception class public M
  • wampserver 主页仅从本地主机可见

    最近我用过WAMPserver 在Windows机器上搭建服务器环境 一切都很好 但我有一个小问题 每个人都可以访问wampserver主页 因此他们可以看到同一服务器上托管的其他网页 服务器文件系统等 网页的 URL 具有以下格式 hos
  • Android PlaceFilter 与 Google Places API 的使用

    我正在尝试使用 Google Places API 并且想将搜索过滤为仅健身房类型 我正在使用给出的代码https developers google com places https developers google com place
  • Mongoose 查询最近 24 小时内的文档,每小时仅查询一个文档

    我正在编写一个应用程序 其中有一些天气传感器每 5 分钟将空气温度和湿度发送到服务器 我想画一张图表来显示温度和湿度如何变化 即一夜之间 我的想法是根据过去 24 小时的数据绘制图表 我自己无法弄清楚 所以我想也许我可以在这里寻求帮助 当然
  • 如何使用操作和控制器名称获取 ActionDescriptor

    给定操作名称 控制器名称和 HTTP 动词 GET POST 等 是否可以检查该操作是否具有 即被修饰 特定的操作过滤器属性 请注意 操作和控制器不是当前操作和控制器 而是可以是应用程序中的任何操作和控制器 Thanks 我已经回答了我自己
  • mac下appium的安装目录

    我已经从 MAC 终端安装了 appium 1 5 1 安装没问题 但由于某种原因我需要安装它的路径 谁能告诉我安装目录在哪里 如果您安装了 GUI appium 应用程序 您可以在 Mac 的 Launchpad 中单击其图标的应用程序
  • 服务结构提醒

    文档 https learn microsoft com en us azure service fabric service fabric reliable actors timers reminders actor reminders
  • ASP.NET Core RC2 区域未发布

    所以我刚刚更新了我的应用程序以使用 ASP NET Core RC2 我使用 Visual Studio 发布了它 并注意到我的区域未发布 这张快照来自src MyProject bin Release PublishOutput 这是我的
  • python pdb:捕获异常后恢复代码执行?

    如果我运行代码ipython pdbmagic 启用并且代码抛出异常 有什么办法告诉代码之后继续执行吗 例如 假设例外是ValueError x 0 not allowed 我可以在 pdb 中设置x 1并允许代码继续 恢复 执行 我认为您
  • Fancybox (jQuery) - 将信息从父级传递到 iframe 并将 iframe 传递回父级

    我正在尝试在我的页面上打开一个 fancybox iframe 将一些基本信息传递给 iframe 然后我想让 iframe 与其父级对话 我静态地传递 nameid 1 尽管我真的很想将其作为变量 例如 var nameid this a
  • 使用 Entity Framework 6 迁移创建索引

    有没有办法使用实体框架代码优先迁移在 MS SQL Server 数据库中创建索引 如果索引必须是 至少下降一列 包括其他列 它必须产生这样的东西 CREATE NONCLUSTERED INDEX IX IndexName ON dbo
  • NSTableView 中的 NSButtonCell:点击处理

    I set NSButtonCell作为一种细胞类型Table Column in my NSTableView 我实施了一个IBAction方法 但我无法将其连接NSButtonCell在 IB 中 线路不想突出显示来自的按钮NSTabl
  • PostgreSql:仅选择周末

    我有一张包含公共假期的表格 id description date 1 Ferragosto and Assunzione 2012 08 15 00 00 00 2 Tutti i santi Ognissanti 2012 11 01
  • 在 Maven 依赖项中插入许可证

    我已经使用 JxBrowser 进行了一些测试 并打算将其添加到我的学术项目中 然而 它是一个 Maven 项目 我使用 Netbeans IDE 开发 虽然我添加了 TeamDev JxBrowser 存储库 但 JxBrowser 依赖
  • 美丽的汤不等待页面完全加载

    因此 使用下面的代码 我想打开一个公寓网站 URL 并抓取网页 唯一的问题是 Beautiful Soup 不会等到整个网页渲染完毕 公寓在加载到页面上之前不会在 html 中呈现 这需要几秒钟的时间 我该如何解决 from urllib