Python是當前非常流行的一種編程語言,它可以實現很多有趣的功能和應用。其中之一就是自動爬取小說。
import requests from bs4 import BeautifulSoup url = "https://www.xxxx.com/xiaoshuo/2400.html" # 小說目錄頁 headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"} response = requests.get(url, headers=headers) response.encoding = "utf-8" html = response.text soup = BeautifulSoup(html, "html.parser") # 解析HTML代碼 # 獲取小說書名 book_title = soup.find("div", class_="bookname").h1.text # 獲取小說目錄鏈接列表 menu_list = soup.find("div", id="list").find_all("a") chapters = [] for i in range(len(menu_list)): chapters.append((menu_list[i].text, menu_list[i]["href"])) # 遍歷所有章節鏈接,爬取小說內容并保存至文件 for chapter in chapters: response = requests.get(chapter[1], headers=headers) response.encoding = "utf-8" soup = BeautifulSoup(response.text, "html.parser") chapter_title = soup.find("div", class_="bookname").h1.text content = soup.find("div", id="content").text with open(f"{book_title}/{chapter_title}.txt", "w", encoding="utf-8") as f: f.write(content)
上述代碼使用requests庫和BeautifulSoup庫實現了爬取小說目錄頁、獲取小說書名和各個章節鏈接的功能。然后遍歷所有章節鏈接,爬取小說內容并保存至以書名為名稱的文件夾中,每章內容保存為一個txt文件。
總之,在Python的豐富工具庫面前,自動爬取小說變得非常簡單,只需要些許的代碼就可以實現。如果你對Python感興趣,那么不妨學習一下,讓你的生活更加豐富多彩吧!
上一篇es6把json數據去重
下一篇python 最佳路線圖