最近疫情猖獗,长假憋在家里实在无聊,早上突然看了一篇python爬虫文章,当场决定试验一下,参照了一下别人的案例,自己各种踩坑捣鼓了好几个小时,终于成功最后把具体步骤和注意点分享给大家:

1、Python爬虫关键的两个组件是requests和BeautifulSoup,特别是BeautifulSoup组件,认真学习好,会使你的爬取之路事半功倍。

2、初始化爬取需要的变量

# -*- coding:UTF-8 -*-
import requests, sys
import urllib3
from bs4 import BeautifulSoupclass downloader():def __init__(self):self.server = 'http://www.biqukan.com'  #爬取的服务器地址(获取文章内容时用)self.target = 'https://www.biqukan.com/73_73577/' #爬取的文章列表self.names = [] #章节名self.urls = []  #章节地址self.nums = []  #章节数量urllib3.disable_warnings()  #禁用掉运行时报出的ssl警告

3、获取文章的各章节名称、总章节数和各章节内容地址,供下载章节内容时使用

  def get_download_url(self):req = requests.get(url=self.target, verify=False) #不使用https验证req.encoding = 'gbk'  #根据爬取页面的编码设置(目标页面F12查看)text = req.textsoup = BeautifulSoup(text, 'html.parser') #不加参数html.parser也可以运行,但是有预警信息div = soup.find_all('div', class_='listmain') #根据类型和class样式查找标签对象a_bf = BeautifulSoup(str(div[0]), 'html.parser')a = a_bf.find_all('a')self.nums = len(a[12:])  #剔除不必要的章节,并统计章节数for each in a[12:]:self.names.append(each.string)self.urls.append(self.server + each.get('href'))

4、根据章节地址,获取章节内容,并进行格式化处理

  def get_contents(self, target):req = requests.get(url = target, verify=False) #不使用https验证req.encoding = 'gbk' #根据爬取页面的编码设置(目标页面F12查看)text = req.textsoup = BeautifulSoup(text, 'html.parser') #不加参数html.parser也可以运行,但是有预警信息texts = soup.find_all('div', class_='showtxt')texts = texts[0].text.replace('\xa0'*8,'\n\n') #替换掉连续的&nbsptexts = texts.replace('app2();','')pos = texts.find('(https://www.biqukan.com/73_73577/')texts = texts[:pos] #切除掉各章节内容最后无用的信息return texts

5、获取的内容,输出到本地的硬盘文件中

  def writer(self, name, path, text):with open(path, 'a', encoding='gbk') as f: #和爬取页面内容的编码保持一致f.write(name + '\n')f.writelines(text)f.write('\n\n') #换行显示

6、运行控制程序

if __name__ == '__main__':dl = downloader()dl.get_download_url()for i in range(dl.nums):dl.writer(dl.names[i], '神武斗圣.txt', dl.get_contents(dl.urls[i]))print(dl.names[i] + ' ---- 下载完成!')

7、运行效果

python爬虫学习一--爬取网络小说实例相关推荐

  1. python爬虫怎么爬小说_python从爬虫基础到爬取网络小说实例

    一.爬虫基础 1.1 requests类 1.1.1 request的7个方法 requests.request() 实例化一个对象,拥有以下方法 requests.get(url, *args) r ...

  2. Python爬虫学习笔记 -- 爬取糗事百科

    Python爬虫学习笔记 -- 爬取糗事百科 代码存放地址: https://github.com/xyls2011/python/tree/master/qiushibaike 爬取网址:https ...

  3. Python爬虫学习之爬取淘宝搜索图片

    Python爬虫学习之爬取淘宝搜索图片 准备工作 因为淘宝的反爬机制导致Scrapy不能使用,所以我这里是使用selenium来获取网页信息,并且通过lxml框架来提取信息. selenium.lxm ...

  4. Python爬虫练习笔记——爬取一本小说并保存为txt文件

    最近竟然开始磕起了黄晓明和尹正的CP!!! 但是万恶的爱某艺不好好更新剧集,居然搞起了超前点映- WTF???有什么是我这个贫穷而又尊贵的VIP用户不能看的吗??? 于是我决定开始看小说了!找个网站把 ...

  5. Python3网络爬虫,简单爬取网络小说并下载

    相信我们常常会有想看的小说,但是不能下载,导致无法在没网的环境下观看..下面将解一下如何用python3爬取网络小说. 本文主要是用于学习,希望大家支持正版. 首先我们需要两个包,我们分别是reque ...

  6. Python爬虫期末作业 | 爬取起点小说网作者和书名,并以Excel形式存储

    使用Python爬虫技术爬取起点小说网作者及书名,并且以xlsx形式保存 前言 随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容. 一. ...

  7. 【Python爬虫实战】爬取某小说网排行榜上的图书封面图片

    文章目录 一.Python爬虫必备两大模块 1.1 requests模块用于发送http请求 1.2 bs4(beautifulsoup)模块用于解析html文本 二.Python爬虫项目演示 2.1 ...

  8. 为了部落 来自艾泽拉斯勇士的python爬虫学习心得 爬取大众点评上的各种美食数据并进行数据分析

    为了希尔瓦娜斯 第一个爬虫程序 csgo枪械数据 先上代码 基本思想 问题1 问题2 爬取大众点评 URL分析 第一个难题 生成csv文件以及pandas库 matplotlib.pyplot库 K- ...

  9. python爬虫学习之爬取超清唯美壁纸

    简介 壁纸的选择其实很大程度上能看出电脑主人的内心世界,有的人喜欢风景,有的人喜欢星空,有的人喜欢美女,有的人喜欢动物.然而,终究有一天你已经产生审美疲劳了,但你下定决定要换壁纸的时候,又发现网上的壁 ...

最新文章

  1. MySQL触发器简介
  2. leetcode 之Remove Nth Node From End of List(19)
  3. 随机给出三十道四则运算题目
  4. spring学习(48):自动装配中定义的bean的作用域
  5. the development of c language(转)
  6. Nagios监控平台完全攻略 (二)
  7. FTP学习的一些笔记
  8. 【java】RMI教程:入门与编译方法 远程
  9. 表按某个字段,新增一个序号列
  10. BERT源码分析PART II
  11. Redhat7离线安装mysql_linux 离线安装mysql7或者8
  12. 如何启动一个本地静态服务器
  13. mac install brew
  14. python requests urlencode_关于requests的urlencode问题
  15. 易筋SpringBoot2.1 | 第二篇:Spring Boot配置文件详解
  16. 【职场日语】日文简历模板
  17. ManjaroLinux安装NVIDIA驱动
  18. 开根号的笔算算法图解_怎么用笔算开根号?
  19. ffmpeg解析出的视频参数PAR,DAR,SAR的意义
  20. 爬虫案例——模拟登录QQ空间

热门文章

  1. LeetCode 310. Minimum Height Trees
  2. 计算机硬件优势与不足,一体机电脑优缺点
  3. HTB-Sandworm
  4. wireshark 4本书
  5. 软考总结——浮想联翩法
  6. openwrt无线连接互联网的实现原理【2】
  7. C# 利用ASP.NET Core开发学生管理系统(一)
  8. 国内外期刊英文缩写查询步骤(按照这个步骤一定能查到)
  9. 中国最美乡村 (精美图文二)
  10. web常用的漏洞修复建议