首页 > 解决方案 > 在 Python 中使用字符串方法进行网页抓取的问题

问题描述

我对网络抓取非常陌生,我正在用 Python 制作一个简单的程序,它使用字符串方法,例如str.find().

目前,我通过以下方式将网页的 HTML 代码提取为字符串

from urllib.request import urlopen

html_str = urlopen(url).read().decode('utf-8')

但是,我对为什么没有返回所有代码感到困惑。例如,一个 Youtube 频道页面显示订阅者数量

<yt-formatted-string id="subscriber-count" class="style-scope ytd-c4-tabbed-header-renderer">106M subscribers</yt-formatted-string>

但是这个字符串没有出现在html_str.

那么,怎么了?有什么我在做或使用不正确的事情吗?

标签: pythonhtmlurllib

解决方案


一些网络抓取库不获取 JavaScript 代码或值。我知道的一个也能获取 JavaScript 代码的库是“Selenium”。但它的代价是它的运行速度似乎比其他抓取库慢。


推荐阅读