抓取的 HTML 与源代码有何不同?

tit*_*lex 3 html python web-scraping

我正在从网站上抓取餐馆列表(经过许可),但遇到了问题。python 从网站上抓取的 html 与源代码中的 html 不同。他们网站上不到一半的餐厅是在 python 的 html 中找到的。这就是我的代码的样子:

import requests
from bs4 import BeautifulSoup
from tempfile import TemporaryFile
import xlwt

url = 'https://www.example.com'

r = requests.get(url)
data = BeautifulSoup(r.text)
soup = data.find_all('span',{'class':'restaurant_name'})
print soup
Run Code Online (Sandbox Code Playgroud)

现在我知道这很不方便,但我无法显示 html,因为公司不允许我这样做。我只是想知道你们是否知道Python下载的html与源代码中的html有何不同以及我能做些什么。

提前致谢!

小智 5

一句话,JavaScript。您正在下载基本的 HTML 页面,但您不是浏览器,并且您没有下载和运行浏览器将运行的任何 javascript 代码。如今,许多网站都是从非常小的 HTML 页面开始,并使用脚本动态加载和显示来自服务器的附加数据。

  • 我如何下载网站的当前状态? (2认同)
  • @titusflex检查上面的答案,你必须使用硒 (2认同)