拥有着个代码~再也不怕没网看不了小说了(内含完整代码)

知识点:

  • requests: 发送网页请求 安装方法: pip install requests
  • parsel: 数据解析 安装方法: pip install parsel
  • re: 数据解析
  • os: 新建文件,文件夹

环境:

  • python3.6
  • python3.8
  • +pycharm(写python代码专业编辑器)

小说爬取实现步骤:

  1. 确定需求:找到受害者 https://www.quge7.com/book/1031
  2. 发送请求:向受害者发送请求
  3. 获取数据:获取源代码
  4. 解析数据:提取小说名字 章节url地址
  5. 发送请求:向章节url地址发送请求
  6. 获取数据:获取源代码
  7. 解析数据:提取小说内容 小说章节名
  8. 保存数据:txt文本数据
    拥有着个代码~再也不怕没网看不了小说了(内含完整代码)_第1张图片

导入模块

import requests # 发送网络请求
import re  # 正则表达式
import parsel
import os  # 文件夹操作

代码

top_list = requests.get('https://www.quge7.com/top/').text
# 解析工具
# xpath 1
# css   2
# re    3
# top_list:字符串
# parsel.Selector: 可以提取的对象类型
selector = parsel.Selector(top_list)
# //
href = selector.xpath("//div[@class='wrap rank']/div/ul/li/a/@href").getall()
title = selector.xpath("//div[@class='wrap rank']/div/ul/li/a/text()").getall()
for book_url, book_title in zip(href, title):
    print(f'----------------------正在爬取{book_title}----------------------')
    if not os.path.exists('./txt/' + book_title):
        os.makedirs('./txt/'+book_title)
    # 请求方式: get, post, delete, put...
    url = 'https://www.quge7.com' + book_url
    response = requests.get(url)
    # 指定编码
    # response.encoding = 'utf-8'
    # response检测当前网页编码
    # response.apparent_encoding自动识别
    response.encoding = response.apparent_encoding
    # <Response [200]>: 请求成功
    data_html = response.text
    # url_list 查找 真正想要的内容
    # <dd><a href ="(.*?)">(.*?)</a></dd>
    url_list = re.findall('
(.*?)
'
, data_html) for url_1, title in url_list: # https://www.quge7.com/book/1031/3.html url_1 = 'https://www.quge7.com' + url_1 response_1 = requests.get(url_1) text = response_1.text content = re.findall('
(.*?)', text, re.S)[0] # <br />: html 换行符 python \n content = content.replace('
'
, '\n') # w : 写入 # r : 读取 # as f: 当前txt文件 with open('./txt/'+book_title+'/'+title+'.txt', mode='w', encoding='utf-8') as f: f.write(content) print(title,'爬取成功!!!')

尾语

好了,我的这篇文章写到这里就结束啦!

有更多建议或问题可以评论区或私信我哦!一起加油努力叭(ง •_•)ง

喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!
请添加图片描述

你可能感兴趣的:(爬虫,python,python,前端,编程语言)