【问题标题】:Why isn't the html code inside div is being parsed?为什么div里面的html代码没有被解析?
【发布时间】:2020-04-23 08:20:03
【问题描述】:

The html code

在这张图片中,div id="root"

中有 html 代码

代码如下:

import requests 
from bs4 import BeautifulSoup

URL = 'https://www.daraz.com.bd/catalog/?spm=a2a0e.home.search.3.73524591owXnnM&q=mobile' 
page = requests.get(URL)

soup = BeautifulSoup(page.content, 'html.parser')
result = soup.find("div", id="root")
print(result)

输出是:

<div id="root"></div>

为什么div里面的html代码没有被解析?

【问题讨论】:

    标签: html web-scraping beautifulsoup


    【解决方案1】:

    &lt;div id="root"&gt;&lt;/div&gt; 内部的内容可能是动态加载的。如果您访问禁用 JavaScript 的页面,您可以自行检查。 使用您的方法,BeatifulSoup 不会解析动态添加的内容(通过 JavaScript)。

    更多细节在这里 => BeautifulSoup not grabbing dynamic content

    我建议在您的情况下使用无头浏览器,以便能够获取使用 JavaScript 生成的动态内容。 (无头浏览器能够执行 JavaScript,因此可以访问动态内容以进行解析)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-31
      • 1970-01-01
      • 2019-10-19
      • 1970-01-01
      • 1970-01-01
      • 2013-11-08
      相关资源
      最近更新 更多