【发布时间】:2026-01-20 02:10:02
【问题描述】:
我正在做一个需要从网站中提取所有链接的项目, 使用此代码,我将从单个 URL 获取所有链接:
import requests
from bs4 import BeautifulSoup, SoupStrainer
source_code = requests.get('https://*.com/')
soup = BeautifulSoup(source_code.content, 'lxml')
links = []
for link in soup.find_all('a'):
links.append(str(link))
问题是,如果我想提取所有 URL,我必须编写另一个 for 循环,然后再编写一个 ...。 我想提取该网站和该网站的子域中存在的所有 URL。 有没有办法做到这一点而不写嵌套? 即使使用嵌套的 for,我也不知道应该使用多少 for 来获取所有 URL。
【问题讨论】:
-
不,不是。这个问题的答案也不再有效,因为从那时起 BeautifulSoup 发生了变化。
-
@Mona 很好,所以你需要使用 * 的
API。 -
这是你们第二次删除你们的答案,:(((
-
我需要一种适用于每个网站的算法。
标签: python url web-scraping beautifulsoup web-crawler