初次尝试python爬虫,爬取小说网站的小说。

news/2024/5/20 14:52:33/文章来源:https://blog.csdn.net/weixin_30781775/article/details/102292499

本次是小阿鹏,第一次通过python爬虫去爬一个小说网站的小说。

下面直接上菜。

  1.首先我需要导入相应的包,这里我采用了第三方模块的架包,requestsrequests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多,因为是第三方库,所以使用前需要cmd安装。

  cmd安装方式,打开cmd,输入以下命令:

                    pip install requests

  2.添加相应的包后,我们需要一个小说链接去爬下这本小说也就是一个url。下面是我当时爬的小说url:http://www.shujy.com/5200/244309/

  3.我们现在有了小说的链接,这时候就要模拟浏览器发送http的请求: 

response=requests.get(url)
response.encoding='gbk'

 

   4.我们可以尝试获取目标小说的网页源码 

html=response.text

  我们把它打印出来看下:

  

  有html基础的朋友应该对这些很熟悉。通过打印我们可以看见小说的名字,作者,以及小说章节的url。这时候我们就先通过HTML网页源码获取小说的名字:

title=re.findall(r'<meta property="og:novel:book_name" content="(.*?)"/>',html)[0]

  从上面的代码我们可以看见是通过正则表达式去匹配的,对正则表达式有疑问的同学可以自行百度下。当然不同网站的具体小说名字可能会放在不同的标签里,需要我们打开网页源码去看看下。

  5.这时候我们也就新建一个文本文件来保存小说内容。

fb=open('%s.txt'% title,'w',encoding='utf-8')

  这时候我们需要获取小说的章节目录对应的url,我们还是来观察下网页的源码。我们通过火狐浏览器的f12看下网页可发现:

  小说的章节目标都在标签<div id='list'>里我们通过下面的代码获取对应的章节名和url。用一个list来存放章节信息。

dl=re.findall(r'<div id="list">.*?</div>',html,re.S)[0]
chapter_info_list=re.findall(r'<a href="(.*?)">(.*?)</a>',dl)

   6.这个时候我们循环每一章节,分别下载,先把章节的链接,章节名提取出来。

for chapter_info in chapter_info_list:chapter_url,chapter_title=chapter_infochapter_url="http://www.shujy.com/5200/244309/%s " % chapter_urlchapter_url=chapter_url.replace(' ','')

  我们可以看见对章节的链接进行的拼接,因为我们可以看见直接提取出来的链接是这样的:

  所以也就需要一个拼接的操作,取得完整的章节链接。

  这个时候来下载小说内容:

chapter_response=requests.get(chapter_url,headers=headers)chapter_response.encoding='gbk'chapter_html=chapter_response.text

我们先是获取到小说具体章节的页面。打开具体小说章节f12查看网页的源码:

  可以清楚的看见小说的具体内容是在标签<div id=content>里,和获取小说章节一样我们采用正则表达式来取得小说的内容。

chapter_content=re.findall(r'<div id="content">(.*?)</div>',chapter_html,re.S)[0]

我们把获取到的小说的内容打印出来看看,

  我们看见一些奇怪的字符&nbsp,<br/>等,我们在实际的小说里没有这些东西,这里就需要我们处理数据。进行一些操作,也叫做数据的清洗。

    chapter_content=chapter_content.replace('&nbsp;','')chapter_content=chapter_content.replace('<br />','')chapter_content=chapter_content.replace('&amp;t;','')

  清洗后的小说内容:

  7.现在就是最后一步把小说保存到本地。

fb.write(chapter_title)fb.write('\n')fb.write(chapter_content)fb.write('\n')print(chapter_url,chapter_title)

  我们来看下最后的结果,我们每爬完一章打印相应的章节链接信息和返回的response信息来看是否成功爬取:

  当当当当,成功的爬下了这边小说。

  

  最后总结下,本次的爬虫就很简单是小阿鹏的初次尝试,中间如果有不对的地方也希望大家的指正,谢谢!

 

转载于:https://www.cnblogs.com/mumu597/p/11355787.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_833481.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

外部样式表 div居中不起作用_网站DIV+CSS教程培训教程X(HTMLCSS基础知识)一

XHTML CSS基础知识1&#xff09;文档类型<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3。org/TR/xhtml1/DTD/xhtml1-transitional.dtd">一定要保留这句话&#xff0c;删除它后可能引起某些样式表失效或其它意想不…

html适应手机显示不全_制作手机网站的重要性

移动互联网和PC互联网互相存在的时代&#xff0c;手机网站对于企业来说也非常的重要&#xff0c;在pc互联网时代网站的结构都只适应电脑端浏览&#xff0c;一旦放在更小屏幕的手机端打开就会页面错乱&#xff0c;文字不清晰&#xff0c;图片显示不全等问题&#xff0c;严重营销…

中的nginx 修改_如何使网站支持https访问?nginx配置https证书

购买SSL证书要想使用https访问你的网址&#xff0c;首先得拥有颁发的SSL证书。我使用的是免费版&#xff0c;有效期为一年&#xff0c;过期后再重新申请。申请SSL证书购买后&#xff0c;可在搜索框输入证书关键字进入到控制台。点击证书申请&#xff0c;按照提示填写完相关信息…

如何搭建基于Java的网站服务器

租赁主机 租赁主机,去主机服务商那里租赁一台主机,可以去阿里云,腾讯云,狗爹,华为云那里租,也可以租其他的主机,还可以用花生壳自己在家里搭建一个,总之,你需要一台具有固定唯一公网IP的电脑; 软件装备软件准备,需要准备的软件列表如下:CentOS-7-x86_64-DVD-1611.iso,FileZilla…

学生问我25-30K得面试题能不能帮忙,这我不得上,爬取某网站电影视频内容

前言 嗨喽&#xff01;大家好&#xff0c;这里是魔王~ 一般国外的电影电视剧&#xff0c;咋都找不到资源&#xff0c;很多人就对此束手无策了 这个时候python就很有用了&#xff0c;只要叫得出名字的&#xff0c;都可以几行代码搞定~ [本次内容]: Python爬取美剧网站电影视…

使用python 采集某网站全站美女图片 ,这么好看得图还不学起来(含完整源码)

本次目的&#xff1a; python 抓取某某站图片 本次亮点&#xff1a; 系统性分析页面多页面数据解析海量图片数据保存 开发环境 & 第三方模块&#xff1a; 解释器版本 >>> python 3.8代码编辑器 >>> pycharm 2021.2requests >>> pip install…

Python实现下载全球最大旅游网站Tripadvisor美食数据~

前言 嗨喽&#xff01;大家好&#xff0c;这里是魔王~ Tripadvisor 是全球领先的旅游网站&#xff0c; 主要提供来自全球旅行者的点评和建议 全面覆盖全球的酒店、景点、餐厅、航空公司 &#xff0c;以及旅行规划和酒店、景点、餐厅预订功能。 Tripadvisor及旗下网站在全球49个…

利用requests+pyquery/selenium爬取塔读网站的小说(解决JS渲染的问题)

文章目录一、环境依赖二、实现1. 基本原理2. selenium代码3. requestspyquery实现代码4. 总结一些问题三、源码下载一、环境依赖 安装requests,selenium,pyquery模块&#xff0c;并下载chromedriver,配置好环境。 #python3 pip install requests selenium pyquery我的seleniu…

Python采集某网站内容, m3u8内容下载

前言 嗨喽&#xff0c;大家好呐&#xff01;这里是魔王~ 环境使用: Python 3.8 <建议最好是和一样版本>Pycharm 模块使用: import requests >>> pip install requests 内置模块 你安装好python环境就可以了 import reimport json 如果安装python第三方…

python带你采集不可言说网站数据,并带你多重骚操作~

前言 嗨喽&#xff0c;大家好呀&#xff0c;这里是魔王呐~ 今天我们采集国内知名的shipin弹幕网站&#xff01; 这里有及时的动漫新番,活跃的ACG氛围,有创意的Up主。 大家可以在这里找到许多欢乐。 目录&#xff08;可根据个人情况点击你想看的地方&#x1f497;&#xff0…

【python】批量高速获取 Instagram,一个简单的外国分享网站

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ! Instagram&#xff08;照片墙&#xff09;是一款运行在移动端上的社交应用&#xff0c;以一种快速、美妙和有趣的方式将你随时抓拍下的图片彼此分享&#xff0c;Facebook公司旗下社交应用 本篇文章主要是如何“批量高速获取”I…

SQL注入-攻入Apple ID钓鱼网站实录

之前写的一篇利用SQL注入方式攻击钓鱼网站的文章&#xff0c;现在在博客园再分享一下。 下午&#xff0c;朋友发了一条朋友圈&#xff0c;内容大概这样&#xff1a; 大体就是她的iPhone丢了&#xff0c;收到了钓鱼短信&#xff0c;多么熟悉的套路&#xff0c;如下&#xff1a; …

CNAME关联githubPage域名及中文域名,创建个人网站

对于前端开发来说&#xff0c;部署一个自己的个人网站部署服务器等比较麻烦&#xff0c;如果只是做静态页面的展示GitHubPage完全够用&#xff0c;而且有300M免费的空间&#xff0c;完全满足需求。 首先你要有GitHubPage项目&#xff0c;具体怎么搭建不在这里说了,前端小白也可…

网站发布-noip

使用no-ip发布网站 本文使用no-ip进行域名的申请与绑定以及最后网站的发布。 用户注册 域名申请 选择My Account 选择Dynamic DNS 选择Create Hostname 创建网站名 输入自己想要的Hostname选择DomainRecord Type正常选A&#xff0c;其他的根据自己需求 创建完成 域名配…

高并发高流量网站架构

Web2.0的兴起&#xff0c;掀起了互联网新一轮的网络创业大潮。以用户为导向的新网站建设概念&#xff0c;细分了网站功能和用户群&#xff0c;不仅成功的造就了一大批新生的网站&#xff0c;也极大的方便了上网的人们。但Web2.0以用户为导向的理念&#xff0c;使得新生的网站有…

制作个人音乐网站

转载于:https://www.cnblogs.com/big-bang3/p/8056870.html

谈谈用ASP.NET开发的大型网站有哪些架构方式(成本)

在上篇文章里(http://www.cnblogs.com/ms0017/archive/2011/07/26/2117676.html)&#xff0c;列举了国内外用ASP.NET开发的大型网站有哪些。最后提到了用.NET开发的大型网站和LAMP/JAVA平台的成本比较。其实在很多时候&#xff0c;收费的不一定就比免费的成本更高。因为开发一个…

大型网站系统架构的演化

前言 一个成熟的大型网站&#xff08;如淘宝、京东等&#xff09;的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性&#xff0c;它总是随着用户量的增加&#xff0c;业务功能的扩展逐渐演变完善的&#xff0c;在这个过程中&#xff0c;开发模式、技术架构、设计…

大型网站技术架构

架构演变第一步&#xff1a;物理分离webserver和数据库 最开始&#xff0c;由于某些想法&#xff0c;于是在互联网上搭建了一个网站&#xff0c;这个时候甚至有可能主机都是租借的&#xff0c;但由于这篇文章我们只关注架构的演变历程&#xff0c;因此就假设这个时候已经是托管…

大型网站技术架构

内容目录&#xff1a;1.初始架构2.应用服务与数据分离3.使用缓存改善网站性能4.应用服务器集群化5.数据库读写分离6.使用反向代理和CDN7.使用分布式FS和分布式DBS8.使用NoSQL和搜索引擎9.业务拆分附&#xff1a;思维导图《大型网站技术架构》读书笔记 - 网站的技术升级路线 本文…