大家好!今天给你们带来了用requests编写的网页小说爬取工具。可以爬取小说名和下载链接,仅供学习!
完整实例:
import requests``from bs4 import BeautifulSoup``import urllib.parse`` ``def get_novels(url, page_count):` `#发送GET请求获取页面内容` `response = requests.get(url)` `content = response.content.decode('gbk')`` ` `#使用BeautifulSoup解析HTML` `soup = BeautifulSoup(content, 'html.parser')`` ` `#查找所有符合条件的元素` `elements = soup.select('.pldal_r1_bt a')`` ` `#使用一个集合保存已经处理过的链接和小说名` `processed_links = set()`` ` `#遍历输出文本和链接` `for element in elements:` `# 获取小说名` `novel_name = element.text.strip()`` ` `#获取li中a标签的链接` `href = element['href']` `if '/book/' not in href:` `continue` ` link_response = requests.get(urllib.parse.urljoin(url, href))` `link_content = link_response.content.decode('gbk')` `link_soup = BeautifulSoup(link_content, 'html.parser')` ` #获取下载链接` `download_element = link_soup.select_one('.dl_link_bd li a')` `if download_element:` `download_link = urllib.parse.urljoin(url, download_element['href'])` `else:` `download_element = link_soup.select_one('.dl_link_bd div a')` `if download_element:` `download_link = urllib.parse.urljoin(url, download_element['href'])` `else:` `download_link = "链接未找到"` ` #判断链接和小说名是否已经处理过` `if (novel_name, download_link) in processed_links:` `continue` ` #将链接和小说名添加到已处理集合中` `processed_links.add((novel_name, download_link))`` ` `print(f"小说名:{novel_name}")` `print(f"下载链接:{download_link}")` `#获取下一页链接` `next_page_link = None` `next_page_element = soup.find('a', string='下一页')` `if next_page_element:` `next_page_link = urllib.parse.urljoin(url, next_page_element['href'])` ` #继续爬取后续页数的小说名和链接` `if page_count > 1 and next_page_link:` `get_novels(next_page_link, page_count - 1)`` ``#爬取页数``page_count = 2``#链接设置``start_url = 'http://www.12z.cn/book/dushiyule/'``#开始``get_novels(start_url, page_count)
输出``小说名:《从笑星走向巨星》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=137&uhash=174cb03a1a79050f076804ab``小说名:[都市娱乐]``下载链接:链接未找到``小说名:《地府重临人间》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=126&uhash=2e3d1b01e4b29f7ccd7565e4``小说名:《神级巫医在都市》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=125&uhash=98ae6a3b72e9d485b64e5326``小说名:《终极教官》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=121&uhash=b48cdc8554488e739f5af8b5``小说名:《仙界网络直播间》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=120&uhash=09061038f69398d1b83551e5``小说名:《老婆是武林盟主》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=279&uhash=0fcf6a3d0800257139dc1fff``小说名:《夜的命名术》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6902&uhash=593f27fca4d78e4040e5b6b3``小说名:《重生2011》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6900&uhash=fdf80b6d9412f6d720280622``小说名:《我已不做大佬好多年》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6896&uhash=3bf78814f52f8f39b723cd9e``小说名:[都市娱乐]``下载链接:链接未找到``小说名:《重生之似水流年》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6880&uhash=48162b5465d2f63976c51a5d``小说名:《重生之金融巨头》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6877&uhash=9aac2f935cb1b980656add7f``小说名:《平常人类的平凡生活》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6876&uhash=7eff5a03a6cc70ffac282042``小说名:《从冒牌大学开始》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6862&uhash=5fd229aa605fad0dfddd4f39``小说名:《寻宝从英伦开始》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6851&uhash=52e3a3c78a2f87ec225a1af9``小说名:《无敌从仙尊奶爸开始》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6840&uhash=1deaeef764535f9403b8f8e7``小说名:《超级农业强国》(校对版全本)``下载链接:http://www.12z.cn/plus/download.php?open=2&id=6837&uhash=04df41735193ff7dff5ecf45
以上就是“Python爬取大量免费小说”的全部内容,希望对你有所帮助。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、Python练习题
检查学习结果。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
最后祝大家天天进步!!
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。