You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BeautifulSoup无法读取网页完整HTML,如何获取realtor.com页面全HTML?

解决realtor.com动态页面HTML获取问题

realtor.com的房产数据是通过JavaScript动态渲染生成的,你用requests直接请求只能拿到初始的静态骨架HTML,无法获取JS加载后的完整内容,所以找不到目标标签。下面是两种可行的解决方案:

方案一:使用Selenium(基于浏览器驱动)

Selenium可以模拟真实浏览器的行为,执行页面中的JavaScript,从而获取完整渲染后的HTML。

  1. 先安装依赖:
pip install selenium
  1. 下载对应浏览器的驱动(比如ChromeDriver),确保驱动版本和你的Chrome浏览器版本一致,把驱动放在系统PATH里或者代码中指定路径。

  2. 示例代码:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from bs4 import BeautifulSoup as bs

main_url = 'https://www.realtor.com/realestateandhomes-search/New-York_NY'

# 配置Chrome无头模式(不显示浏览器窗口)
chrome_options = Options()
chrome_options.add_argument('--headless=new')
chrome_options.add_argument('--disable-gpu')

# 启动浏览器
driver = webdriver.Chrome(options=chrome_options)
driver.get(main_url)

# 等待页面加载(可根据实际情况调整等待时间或使用显式等待)
driver.implicitly_wait(10)

# 获取完整页面HTML
page_source = driver.page_source
soup = bs(page_source, 'html.parser')

# 后续可通过soup查找目标标签,示例:
# titles = soup.find_all('div', class_='property-card-title')

# 关闭浏览器
driver.quit()

方案二:使用Playwright(更简洁的无头浏览器工具)

Playwright是微软推出的自动化工具,自带浏览器驱动管理,无需手动下载驱动,使用更便捷。

  1. 安装依赖:
pip install playwright
playwright install  # 自动安装所需浏览器(如Chromium)
  1. 示例代码:
from playwright.sync_api import sync_playwright
from bs4 import BeautifulSoup as bs

main_url = 'https://www.realtor.com/realestateandhomes-search/New-York_NY'

with sync_playwright() as p:
    # 启动无头Chromium浏览器
    browser = p.chromium.launch(headless=True)
    page = browser.new_page()
    page.goto(main_url)
    
    # 等待页面关键元素加载完成(也可使用固定等待时间)
    page.wait_for_selector('.property-card-title')
    
    # 获取完整HTML
    page_source = page.content()
    soup = bs(page_source, 'html.parser')
    
    # 后续解析操作,示例:
    # titles = soup.find_all('div', class_='property-card-title')
    
    browser.close()

注意事项

  • 频繁请求可能触发网站反爬机制,建议添加合理的请求间隔,避免短时间内多次访问。
  • 可在请求时设置用户代理(User-Agent),模拟真实浏览器请求头,降低被拦截概率。

内容的提问来源于stack exchange,提问作者beridzeg45

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 18:31:06