简单的文章爬取(Python)

该博客详细介绍了如何使用Python的BeautifulSoup库爬取古诗文网上的《三国演义》全本内容。首先通过设置User-Agent伪装浏览器,然后获取首页URL的数据,接着解析HTML找到所有章节标题和对应的链接。对于每个章节,再次发送请求获取内容,并将其保存到本地文件中。整个过程实现了从抓取到保存的完整流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

from bs4 import BeautifulSoup
import bs4
import requests
import lxml

# UA 伪装
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0"
}
# 先进行首页数据的爬取
# 指定url
url = "https://so.gushiwen.org/guwen/book_106.aspx"
page_txt = requests.get(url, headers=headers).text
# 创建Beautifulsoup实例
soup = BeautifulSoup(page_txt, "lxml")
# 爬取所有的标题  注意返回一个列表
soup_lis = soup.select(".bookcont > ul > span ")
fp = open("./sanguo.txt", "w", encoding="utf-8")
# 遍历所有标题
for i in soup_lis:
    # 取出标题
    soup_title = i.string
    # 取出标题中原文章中的url
    new_url = i.a["href"] # 注意必须是这个标签的上一级.下一级
    # 爬取每章中的所有数据
    new_txt = requests.get(new_url, headers=headers).text
    new_soup = BeautifulSoup(new_txt, "lxml") # 重新生成一个实例
    all = new_soup.find("div", class_="contson").text # 注意这里可以使用find,因为原文章的作品只在这个标签下面
    fp.write(soup_title + "\n" + all)
    print("爬取完成!!")
fp.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时越zz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值