gpt4 book ai didi

python - 使用 python beautifulsoup 解析整个网站

转载 作者:行者123 更新时间:2023-12-01 08:48:54 26 4
gpt4 key购买 nike

当我尝试解析https://www.forbes.com/时出于学习目的。当我运行代码时,它只解析一页,我的意思是主页。

我如何解析整个网站,我的意思是,一个网站的所有页面。

我尝试的代码如下:

from bs4 import BeautifulSoup
import re
from urllib.request import urlopen

html_page = urlopen("http://www.bdjobs.com/")

soup = BeautifulSoup(html_page, "html.parser")




# To Export to csv file, we used below code.

links = []
for link in soup.findAll('a', attrs={'href': re.compile("^http")}):
links.append(link.get('href'))
import pandas as pd
df = pd.DataFrame(links)
df.to_csv('link.csv')

#print(df)

你能告诉我如何解析整个网站,而不是一页吗?

最佳答案

您有多种选择,这取决于您想要实现的目标。

编写自己的抓取工具

与您在代码片段中尝试执行的操作类似,从网站获取页面,识别该页面中所有有趣的链接(使用 xpath、正则表达式等)并迭代,直到访问整个页面域名。

这可能最适合学习爬行的基础知识,或者作为一次性任务快速获取一些信息。

您必须小心一些想法,例如不要两次访问相同的链接、限制域以避免访问其他网站等。

使用网络抓取框架

如果您希望针对生产应用程序执行一些严重的抓取或一些大规模抓取,请考虑使用诸如 scrapy 之类的框架。 .

它为您解决了许多常见问题,并且是通过阅读文档和深入研究代码来学习网页抓取高级技术的好方法。

关于python - 使用 python beautifulsoup 解析整个网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53210998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com