简单爬取小说

import urllib.request
import re

#爬取小说是最基础的爬虫,学会思路就能去做一些高级爬虫,思路一样,只是用的库或者JS或者异步等问题不同而已

url = "https://www.qb5200.tw/xiaoshuo/36/36143/"#爬取的小说网址

with urllib.request.urlopen(url) as doc:
    html = doc.read()#读取网页
html = html.decode("gbk")#解码
title = re.findall(r‘<meta property="og:title" content="(.*?)"/>‘, html)[0]
fb = open(‘%s.text‘ % title, ‘w‘, encoding=‘gbk‘)
urls = re.findall(r‘<dd><a href ="(.*?)">(.*?)</a></dd>‘, html)
for i in urls:
    chapter_url = i[0]#获取每章小说的主要地址,地址不完整
    chapter_name = i[1]#获取每章的章名
    chapter_url = "https://www.qb5200.tw%s" % chapter_url#将基地址与每章主要地址拼接
    chapter_html = urllib.request.urlopen(chapter_url).read()#解析每章网页
    chapter_html = chapter_html.decode("gbk")#decode(“gbk”)或utf-8取决于原网页的编码
    chapter_content = re.findall(r‘<div id="content" class="showtxt">(.*?)</div>‘, chapter_html)[0]
    chapter_content = chapter_content.replace("&nbsp;", "")#用正则将无效数据替换掉
    chapter_content = chapter_content.replace("<br /><br />","")#用正则将<br/>(换行)替换
    fb.write(chapter_name)#写入txt文件中
    fb.write(chapter_content)
    fb.write(‘\n‘)将换行写入

原文地址:https://www.cnblogs.com/persistence-ok/p/10924300.html

时间: 2024-11-07 01:29:41

简单爬取小说的相关文章

Golang 简单爬虫实现,爬取小说

为什么要使用Go写爬虫呢? 对于我而言,这仅仅是练习Golang的一种方式. 所以,我没有使用爬虫框架,虽然其很高效. 为什么我要写这篇文章? 将我在写爬虫时找到资料做一个总结,希望对于想使用Golang写爬虫的你能有一些帮助. 爬虫主要需要解决两个问题: 获取网页 解析网页 如果这两个都无法解决的话就没法再讨论其他了. 开发一个爬取小说网站的爬虫会是一个不错的实践. 这是两个实例: Golang 简单爬虫实现 golang 用/x/net/html写的小爬虫,爬小说 这是需要的两个项目: go

python爬虫——爬取小说 | 探索白子画和花千骨的爱恨情仇(转载)

转载出处:药少敏   ,感谢原作者清晰的讲解思路! 下述代码是我通过自己互联网搜索和拜读完此篇文章之后写出的具有同样效果的爬虫代码: 1 from bs4 import BeautifulSoup 2 import requests 3 4 if __name__ == '__main__': 5 html = requests.get('http://www.136book.com/huaqiangu/') 6 soup = BeautifulSoup(html.content, 'lxml'

Python实战项目网络爬虫 之 爬取小说吧小说正文

本次实战项目适合,有一定Python语法知识的小白学员.本人也是根据一些网上的资料,自己摸索编写的内容.有不明白的童鞋,欢迎提问. 目的:爬取百度小说吧中的原创小说<猎奇师>部分小说内容 链接:http://tieba.baidu.com/p/4792877734 首先,自己定义一个类,方便使用.其实类就像一个"水果篮",这个"水果篮"里有很多的"水果",也就是我们类里面定义的变量啊,函数啊等等,各种各样的.每一种"水果&q

Python爬虫:爬取小说并存储到数据库

爬取小说网站的小说,并保存到数据库 第一步:先获取小说内容 #!/usr/bin/python # -*- coding: UTF-8 -*- import urllib2,re domain = 'http://www.quanshu.net' headers = {     "User-Agent": "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrom

scrapy初探之实现爬取小说

一.前言 上文说明了scrapy框架的基础知识,本篇实现了爬取第九中文网的免费小说. 二.scrapy实例创建 1.创建项目 C:\Users\LENOVO\PycharmProjects\fullstack\book9>scrapy startproject book9 2.定义要爬取的字段(item.py) import scrapy class Book9Item(scrapy.Item): # define the fields for your item here like: # na

多线程爬取小说时如何保证章节的顺序

前言 爬取小说时,以每一个章节为一个线程进行爬取,如果不加以控制的话,保存的时候各个章节之间的顺序会乱掉. 当然,这里说的是一本小说保存为单个txt文件,如果以每个章节为一个txt文件,自然不会存在这种情况. 不仅仅是小说,一些其他的数据在多线程爬取时也有类似情况,比如: 漫画:漫画其实是由大量图片组成,一般一本漫画会保存为一个pdf文件,在此过程要保证图片的顺序. 视频:现在网络上的视频大部分是由多个ts文件拼合,最后保存为一个mp4文件,要保证ts文件的顺序. 它们都有一个共同的特点,那就是

爬取小说

爬取小说: from bs4 import BeautifulSoup import requests class spiderstory(object): def __init__(self): self.url = 'http://www.365haoshu.com/Book/Chapter/' self.names = []#存放章节名称 self.hrefs = []#存放章节链接 def get_urlandname(self): '''获取章节名称和和章节URL''' respons

Python 爬取小说——《唐朝小闲人 》

# 爬取小说:唐朝小闲人 # 导入需要用到的库 import requestsimport osimport reimport timeimport random # 查看源网页 beginurl = 'https://www.sbiquge.com/2_2523/' # 目录网页 ## 爬取各章网页 url_response = requests.get(beginurl).text                 #目录网页的源代码url_regex = '<a href ="/2_2

python简单实现爬取小说《天龙八部》,并在页面本地访问

写在前面:第一次使用爬虫,甚至都算不上爬虫,水平有限,主要作为学习记录. 主要业务流程如下: 使用python的requests模块获取页面信息 通过re模块(正则表达式)取出需要的内容(小说标题,正文) 通过MysqlDB模块入库 使用webpy模块进行访问 下面是效果图,简单实现了点击上一页.下一页翻页的功能: 目录结构如下: D:\PROJECT\SPIDER│  fiction_spider.py│  webapp.py│└─template        index.html 爬取信息