范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Pyhon爬虫下载小说

  本节通过具体的爬虫程序,演示BS4解析库的实际应用。爬虫程序目标:下载诗词名句网(https://www.shicimingju.com/book/)《两晋演义》小说。
  关于分析网页分过程,这里不再做详细介绍了,只要通读了前面的文章,那么关于如何分析网页,此时您应该了然于胸了。其实,无论您爬取什么类型的网站,分析过程总是相似的。案例简单分析
  首先判网站属于静态网站,因此您的主要任务是分析网页元素的组成,然后使用BS4提取所需的信息。如下所示:
  提取到a标签是解决本程序的重点,a标签的页面代码结构如下所示: 
  • 自序
  • 第一回 祀南郊司马开基 立东宫庸雏伏祸
  • 第二回 堕诡计储君纳妇 慰痴情少女偷香
  • ...123456复制代码类型:[python]   从上述代码可以看出,a标签包含了目录名称以及详情页的地址链接。那么如何获取a标签呢?经过简单分析后可知a标签属于p>ul>li的子节点,因此可以使用BS4的select()获取。如下所示:list_name = soup.select(".book-mulu > ul > li > a")1复制代码类型:[python]   上述代码的返回值是一个列表,列表中每一个元素都是一个Tag对象,类型为。   下载详情页的URL也非常容易获得,它是由发起请求的URL与a标签的herf链接拼接而成。因此通过字符串拼接就可以获取下载详内容页的URL。https://www.shicimingju.com/book/liangjinyanyi/2.html https://www.shicimingju.com/book/liangjinyanyi/3.html12复制代码类型:[python]   最后一步是提取具体的内容。通过分析详情页的元素构成可知,我们想要的内容都包含在以下标签中: 具体内容 123复制代码类型:[python]   因此使用BS4的find()方法就可以获取所需内容,如下所示:artist = soup.find("p", class_="chapter_content")1复制代码类型:[python]   之后把获取的内容写入到txt文件中就可以了。下面我使用之前学习过的urllib模块与BS4模块编写爬虫程序,这样才能做到温故而知新。编写爬虫程序   代码如下所示,程序中已经做了详细的注释:import urllib.request import random from bs4 import BeautifulSoup import time def request_html(url): headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36"} request = urllib.request.Request(url, headers=headers) return request def parse_html(html, f): # 生成soup对象 soup = BeautifulSoup(html, "lxml") # 查找所有的章节链接和标题内容 list_name = soup.select(".book-mulu > ul > li > a") # 遍历每一个列表中的tag对象,获取链接个目录 for item in list_name: # 获取链接 #item: 自序 #拼接目录链接,此处item类型为,使用下面方法可以值获取href属性值 href = "http://www.shicimingju.com" + item["href"] # 获取标题 title = item.text print("正在下载:-**--%s--**-......" % title) # 获取章节内容函数 text = get_text(href) # 写入文件 f.write(title + " " + text) print("结束下载:-**--%s--**-" % title) time.sleep(random.uniform(0,1)) # 提取章节内容 def get_text(href): #创建请求对象 request = request_html(href) content = urllib.request.urlopen(request).read().decode("utf8") soup = BeautifulSoup(content, "lxml") # 查找包含内容的tag--p artist = soup.find("p", class_="chapter_content") #获取tag标签中的文本内容 return artist.text def run(): # 打开文件 f = open("两晋演义.txt", "w", encoding="utf8") url = "http://www.shicimingju.com/book/liangjinyanyi.html" # 构建请求对象 request = request_html(url) # 发送请求,得到响应,转换为HTML对象 html = urllib.request.urlopen(request).read().decode("utf8") # 解析内容 parse_html(html,f) #关闭文件 f.close() if __name__ == "__main__": run()12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152复制代码类型:[python]   程序运行结果:正在下载:-**--自序--**-...... 结束下载:-**--自序--**- 正在下载:-**--第一回 祀南郊司马开基 立东宫庸雏伏祸--**-...... 结束下载:-**--第一回 祀南郊司马开基 立东宫庸雏伏祸--**- 正在下载:-**--第二回 堕诡计储君纳妇 慰痴情少女偷香--**-...... ....   开课吧广场-人才学习交流平台

充电10分钟游戏一整天!黑鲨4S高达限定版评测一前言手机游戏成主流黑鲨4S再发力近几年,随着智能手机市场的不断发展成熟,同质化现象越来越严重,想杀出一条血路就必须有自己的特色,必须抓住细分市场,手机游戏就是一个典型,甚至已经逐S11总决赛,大学城线下观赛来啦!虎牙x西伯利亚,一起来为EDG加油!骑士出征不破不立!11月6日S11总决赛大型线下观赛300寸极爽超清LED大屏专业级灯光舞美演出级别线阵音响全场免费吃喝精美周边福利为爱而聚E起前进一起来为EDG战队加油助威!本次当贝X3投影仪,高亮激光投影的用户真实体验反馈当贝X3投影仪自上市以来就受到了市场的大量关注,经常卖断货,想要购买的用户也都需要预约购买,可谓是供不应求,那么已经购买过的用户真实体验和反馈又如何呢?看看网友总结的一些点经验,就骁龙888真发布了,主频提升至3GHz,多家品牌会率先使用骁龙888性能强劲功耗高发热大,目前基本各家都对性能进行了压制,俗称温控,可以说目前的骁龙888的性能已经无法发挥到极致,甚至感觉80都发挥不出来,在这种情况下,历代升级的骁龙88Windows11升级门槛不高,4年老电脑完美支持Win11发布后,看大家最关心的就是自己的电脑支不支持,要求配置高不高,那么下面就来详细聊聊这个事,其实给我感觉门槛不高。首先我们需要在微软官网,Win11介绍页中找到做好准备,在新款SwitchOLED发售日期内含信息,还将有两款塞尔达重置昨晚任天堂突然发布了新款NS,一款OLED屏的switch,发售日期定于10月8号,关键点就是这个发售日期。新款NS主要升级点有,屏幕从6。2英寸LCD屏升级到7英寸OLED屏,分安卓平板复活,小米OV及子品牌的Pad都在路上可能是因为去年平板需求增大,今年国产这几家品牌以及子品牌都要开始搞平板,重启平板项目了,这样看的话,下半年会有一堆安卓平板发布。小米平板5重启,其搭载骁龙870,11英寸LCD屏,聊聊苹果MagSafe电池细节,749元买一块1460mAh充电宝?14号,苹果上架一款新配件MagSafe外接电池,俗称磁吸充电宝,售价749元。产品上架后,网上果粉直接炸锅,什么?749元买一个1460毫安容量的充电宝?但如果细看的话,这款产品雷军新目标已给出暗示,小米将正式与苹果掰手腕根据全球著名市场调研机构Canalys发布的2021Q2排名看,小米以17的市场占有率超越苹果,成为全球第二,距离第一的三星只差2。按照这个节奏,小米的下一个目标会不会就是全球第一小米捐款被质疑缩水,官方声明后还被质疑?7月20日凌晨,河南遭遇极端降雨,发生水灾。7月20日晚,小米公益基金会决议向河南捐款5000万元。7月21日上午,雷军公布这一消息。7月22日郑州慈善总会官微发表感谢,其中提到捐小米12可能长这样?新专利环绕屏预告新机造型荷兰科技博客LetsGoDigital刚刚分享了小米的一项环绕屏手机新专利,可知其采用了滑盖式的隐藏前摄以及从底部延伸至机身背面的柔性屏方案。这项电子设备专利于2020年你10月2
埃隆马斯克我的成功源于美国,在其他任何国家都做不到全球电动汽车行业领导者特斯拉和太空X的太空布局中的42,000个联锁卫星。两家国际公司,站在同一个人埃隆面具。面具无疑是一个传奇人物,有雄心壮志,敢于做出大胆的想法,它也可以逐一想红米发布一个月的游戏手机降价200,10Hz67W航天复合一体散热膜智能手机行业竞争激烈,现在各大手机厂商推行机海战术,因此一款手机发布没多久就出现降价已经很平常了,今天要说的是红米在上个月底发布的一款游戏手机红米K40游戏增强版,这款手机目前12想给父母买个手机,要求拍照好,内存至少128g,最好256G,预算20003000,有推荐的吗?划重点父母用拍照好大内存预算两三千简单来说,给父母用,那就要求耐用且实用,不用过于注重性能和性价比。要求拍照好那说明有拍照需求,无非就是记录生活,还有就是孩子的成长,聊微信这些方便银保监会理财产品新规出炉微信支付宝等不能再卖理财产品羊城晚报全媒体记者黄婷变相宣传预期收益率互联网平台代销银行理财产品这些理财产品销售行为即将被叫停。5月27日,银保监会官网发布理财公司理财产品销售管理暂行办法(以下简称办法),自今OPPOEncoAir2Pro图赏圆润美学再得延续,创意微笑曲线定调清新作为国产TWS耳机中的翘楚,OPPOEnco系列在这几年于各个价位段都带来了不少体验颇佳口碑颇丰的产品。当中像是在消费群体最为广泛的百元价位段,继去年的爆款OPPOEncoAir2英雄出山readyfor你的下一台电脑何必是电脑英雄请出山相较于s的2。0,s30这次3。0重点升级可能就是关于readyfor升级了。重点介绍readyfor的内容1。打开方式先在电脑上下载readyfor去官网下载既可,两种手机第一天用烫手,这个热搜亮了5月5日,劳动节过后的第一个工作日,按理来说,应该是要努力工作劳动的。然而本能告诉我们,不,你不想上班不仅假期积累的疲劳没有缓解,外面30度的高温更是让人寸步难行,这温度别说外出,网络维护常用命令详解一ping命令的详细用法在网络中ping是一个十分强大的TCPIP工具。它的作用主要为1用来检测网络的连通情况和分析网络速度2根据域名得到服务器IP3根据ping返回的TTL值来判京东洗衣机热卖TOP10TCL第六,小天鹅仅排第三,第一无可撼动懒惰有时候真的能促进人类科技的进步,无论是洗衣机洗碗机还是扫地机器人,最初的意义都是人类懒于去做这些事情,所以希望能由机器来完成,不过相比之下这些能够帮助人类偷懒的机器中,最好用的试点扩围,数字人民币的应用空间有多大?近日,数字人民币试点范围扩大,在现有的试点地区基础上增加天津市重庆市广东省广州市福建省福州市和厦门市浙江省承办亚运会的6个城市作为试点地区,北京市和河北省张家口市在2022北京冬奥iPhone14系列价格曝光,美国以外会涨价,国内可能售价5999起新款iPhone预计将于9月发布,距今大概还有四个月时间,网络已有大量曝料信息放出。iPhone14系列有哪些亮点值得升级呢?据消息称iPhone14Pro将废弃刘海屏,改用挖孔屏