思路,第一步小说介绍页获取章节地址,第二部访问具体章节,获取章节内容

具体如下:先获取下图章节地址

def stepa(value,headers):
lit=[]
response = requests.get(value, headers=headers)
html = etree.HTML(response.text)
url = html.xpath('//*[@id="chapterlist"]//@href')#获取每章地址
lit.append(url)
return(lit)
add=stepa(value,headers)
allurl=add[0]#去掉括号

上方代码可获取到下图红色区域内内容,即每一章节地址的变量部分,且全部存在脚本输出的集合中

第二部,循环访问集合中的章节地址,获取章节内容,同时逐行存储在对应章节命名的txt文件中

for link in allurl:
link = 'http://www.666wx.cc'+link#拼接地址,可访问
response = requests.get(link, headers=headers)
html = etree.HTML(response.text)
name = html.xpath('//*[@id="center"]/div[1]/h1/text()')#章节
name =name[0]
content = html.xpath('//*[@id="content"]/text()')#章节内容
for 内容 in content:
内容 = 内容.strip()#去掉每行后的换行符
with open(path+'\\'+str(name)+'.txt', 'a',encoding='utf-8') as w:
w.write(str(内容))
w.close()

生成的文件一览

txt内容

全部脚本

# -*-coding:utf8-*-
# encoding:utf-8
#本脚本爬取http://www.666wx.cc站小说
import requests
from lxml import etree
import os
import sys
import re headers = {
'authority': 'cl.bc53.xyz',
'upgrade-insecure-requests': '1',
'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36',
'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
'sec-fetch-site': 'none',
'sec-fetch-mode': 'navigate',
'accept-language': 'zh-CN,zh;q=0.9',
'cookie': '__cfduid=d9b8dda581516351a1d9d388362ac222c1603542964',
} value = "http://www.666wx.cc/txt/77079/"#小说地址 path = os.path.abspath(os.path.dirname(sys.argv[0])) def stepa(value,headers):
lit=[]
response = requests.get(value, headers=headers)
html = etree.HTML(response.text)
url = html.xpath('//*[@id="chapterlist"]//@href')#获取每章地址
lit.append(url)
return(lit)
add=stepa(value,headers)
allurl=add[0]#去掉括号
for link in allurl:
link = 'http://www.666wx.cc'+link#拼接地址,可访问
response = requests.get(link, headers=headers)
html = etree.HTML(response.text)
name = html.xpath('//*[@id="center"]/div[1]/h1/text()')#章节
name =name[0]
content = html.xpath('//*[@id="content"]/text()')#章节内容
for 内容 in content:
内容 = 内容.strip()#去掉每行后的换行符
with open(path+'\\'+str(name)+'.txt', 'a',encoding='utf-8') as w:
w.write(str(内容))
w.close()
print("ok")

python,爬取小说网站小说内容,同时每一章存在不同的txt文件中的更多相关文章

  1. python爬取某个网站的图片并保存到本地

    python爬取某个网站的图片并保存到本地 #coding:utf- import urllib import re import sys reload(sys) sys.setdefaultenco ...

  2. 用Python爬取斗鱼网站的一个小案例

    思路解析: 1.我们需要明确爬取数据的目的:为了按热度查看主播的在线观看人数 2.浏览网页源代码,查看我们需要的数据的定位标签 3.在代码中发送一个http请求,获取到网页返回的html(需要注意的是 ...

  3. Python爬取某网站文档数据完整教程(附源码)

    基本开发环境 (https://jq.qq.com/?_wv=1027&k=NofUEYzs) Python 3.6 Pycharm 相关模块的使用 (https://jq.qq.com/?_ ...

  4. 利用Python爬取电影网站

    #!/usr/bin/env python #coding = utf-8 ''' 本爬虫是用来爬取6V电影网站上的电影资源的一个小脚本程序,爬取到的电影链接会通过网页的形式显示出来 ''' impo ...

  5. python爬取电影网站信息

    一.爬取前提1)本地安装了mysql数据库 5.6版本2)安装了Python 2.7 二.爬取内容 电影名称.电影简介.电影图片.电影下载链接 三.爬取逻辑1)进入电影网列表页, 针对列表的html内 ...

  6. python爬取招聘网站数据

    # -*- coding: utf-8 -*- # 爬虫分析 from bs4 import BeautifulSoup from lxml import etree from selenium im ...

  7. Python爬取招聘网站数据,给学习、求职一点参考

    1.项目背景 随着科技的飞速发展,数据呈现爆发式的增长,任何人都摆脱不了与数据打交道,社会对于“数据”方面的人才需求也在不断增大.因此了解当下企业究竟需要招聘什么样的人才?需要什么样的技能?不管是对于 ...

  8. Python爬取mn52网站美女图片以及图片防盗链的解决方法

    防盗链原理 http标准协议中有专门的字段记录referer 一来可以追溯上一个入站地址是什么 二来对于资源文件,可以跟踪到包含显示他的网页地址是什么 因此所有防盗链方法都是基于这个Referer字段 ...

  9. python爬取凤凰网站的新闻,及其链接地址,来源,时间和内容,用selenium自动化和requests处理数据

    有写规则需要自己定义判断. import requests from selenium import webdriver import time def grasp(urlT): driver = w ...

  10. python爬取视频网站m3u8视频,下载.ts后缀文件,合并成整视频

    最近发现一些网站,可以解析各大视频网站的vip.仔细想了想,这也算是爬虫呀,爬的是视频数据. 首先选取一个视频网站,我选的是 影视大全 ,然后选择上映不久的电影 “一出好戏” . 分析页面 我用的是c ...

随机推荐

  1. 萌新赛 sprintf漏洞

    首先是个.git源码源码泄露,用githack回复一下源码 源码 <?php $pass=sprintf("and pass='%s'",addslashes($_GET[' ...

  2. TCP协议的三次握手-4次挥手

    TCP的连接建立是一个三次握手过程,目的是为了通信双方确认开始序号,以便后续通信的有序进行.主要步骤如下: 连接开始时,连接建立方(Client)发送SYN包,并包含了自己的初始序号a: 连接接受方( ...

  3. DeepSeek,你是懂.NET的!

    这两天火爆出圈的话题,除了过年,那一定是DeepSeek!你是否也被刷屏了? DeepSeek 是什么 DeepSeek是一款由国内人工智能公司研发的大型语言模型,拥有强大的自然语言处理能力,能够理解 ...

  4. ELB UDP健康检查常见故障分析

    本文分享自天翼云开发者社区<ELB UDP健康检查常见故障分析>,作者:王****宁 什么是UDP健康检查 UDP是面向非连接的一种协议,在发送数据前不会通过进行三次握手建立连接,UDP健 ...

  5. .gitignore 文件添加新项后需要做的处理

    有问题敬请评论告知作者. .gitignore 文件添加新项后,已追踪的文件仍然会被追踪.(只要执行过 git add 的文件就会被追踪,追踪它的修改) 怎么取消追踪呢? 想要取消文件追踪可以使用命令 ...

  6. Thymeleaf select 反显 默认选中

    后台代码 List<ExamTestPaperDO> list = examTestPaperService.list(map); model.addAttribute("tes ...

  7. IDM 下载器 汉化注册激活

    将以下程序更改为.bat文件.使用windows的管理员权限打开. 汉化于:https://github.com/WindowsAddict/IDM-Activation-Script @setloc ...

  8. 【COM3D2Mod 制作教程(7)】实战!制作衣服部分(上)

    [COM3D2Mod 制作教程(7)]实战!制作衣服部分(上) 教程介绍 隔了 N 个月终于迎来了第二期的 Mod 教程部分,这一期我们将开始制作人物的衣服部分. 因为体型适配的原因,衣服部分要比身体 ...

  9. QT5笔记: 19. QFileSystemModel 联动 QListView QTableView QTreeView

    Model 指的是数据 View 指的是界面,View不用设置,只需要和Model进行绑定,绑定完成之后就是Model的格式了 例子:*本例子中QListView QTableView QTreeVi ...

  10. 大数据之路Week10_day01 (通过直接创建Hfile文件的方式往Hbase中插入数据)

    package com.wyh.parctise; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.P ...