20行Python代码实现爬取起点小说

相信在座各位应该没有几个不看小说的吧,嘿嘿~
在这里插入图片描述
一般来说咱们书荒的时候怎么办?自然是去起某点排行榜先找到小说名字,然后再找度娘一搜,哎 ,笔趣阁就出来答案了,美滋滋~

在这里插入图片描述
但是那多麻烦,咱们直接用python,直接全部下载下来慢慢看不就好了~
小孩子才做选择,成年人选择都要…

20行Python代码实现爬取起点小说
好了,不啰嗦了,等下大家要骂我了~

准备工作

环境模块

咱们没装软件的装一下软件,没装模块的装一下模块,软件我就不讲了。

模块咱们用到的是这两个模块,需要安装一下。

requests   # 发送请求
re     # 正则表达式模块

 # Python学习交流群  815624229

#  软件和安装教程等等各种资料都在这里了

 

pip install 模块名 安装即可

目标地址

https://read.qidian.com/chapter/3i-t4PVRihdwe0zGvdPFgA2/djLVNZuVg7eaGfXRMrUjdw2/

大家可以自己换,我这里以它为例。

爬虫流程

爬虫的流程基本都是这几步,我这里不详细讲解了,以前的文章有些讲过。

1. 发送请求
2. 获取数据
3. 解析数据
4. 保存数据

20行Python代码实现爬取起点小说

完整代码

import requests     # 发送请求
import re

# 伪装
headers = {
    'cookie': '_yep_uuid=b1421b7f-11da-b15f-a3ad-95316478f93c; e1=%7B%22pid%22%3A%22qd_P_read%22%2C%22eid%22%3A%22%22%2C%22l1%22%3A3%7D; e2=%7B%22pid%22%3A%22qd_P_read%22%2C%22eid%22%3A%22%22%2C%22l1%22%3A3%7D; newstatisticUUID=1648708045_1995757040; _csrfToken=mAWbsvESMNwir4NfKBy5fy8RedwvNBabTq3PLx6r; fu=721555856; _gid=GA1.2.1193345906.1648708045; e1=%7B%22pid%22%3A%22qd_p_qidian%22%2C%22eid%22%3A%22qd_A18%22%2C%22l1%22%3A3%7D; e2=; qdrs=0%7C3%7C0%7C0%7C1; showSectionCommentGuide=1; qdgd=1; rcr=1031788647%2C1031920667; bc=1031920667%2C1031788647; pageOps=1; lrbc=1031788647%7C686160165%7C0%2C1031920667%7C695153167%7C1; _ga_FZMMH98S83=GS1.1.1648708044.1.1.1648708759.0; _ga_PFYW0QLV3P=GS1.1.1648708044.1.1.1648708759.0; _ga=GA1.2.777546916.1648708045',
    'referer': 'https://book.qidian.com/',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36',
}
url = 'https://book.大家自己改一下,看了准备工作就知道了.com/info/1031920667/#Catalog'
html_data = requests.get(url=url, headers=headers).text
info_list = re.findall('<h2 class="book_name"><a href="(.*?)" target="_blank" data-eid=".*?" data-cid=".*?" alt=".*?" title=".*?">(.*?)</a></h2>', html_data)
for link, title in info_list:
    link = 'https:' + link
    # print(link, title)
    # 1. 发送请求
    response = requests.get(url=link, headers=headers)
    # 2. 获取数据
    link_data = response.text
    # print(html_data)
    # 3. 解析数据
    # 网页标签 <p></p> <a></a> <div></div> <img />
    # <div class="read-content j_readContent" id=".*?">(.*?)</div>
    text = re.findall('<div class="read-content j_readContent" id=".*?">(.*?)</div>', link_data, re.S)[0]
    text = text.replace('<p>', '\n')
    text = title + '\n\n' + text
    print(text)
    # 4. 保存数据
    with open('网恋女友竟是九天神凰.txt', mode='a', encoding='utf-8') as f:
        f.write(text)

 

兄弟们快去试试吧

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:20行Python代码实现爬取起点小说 - Python技术站

(0)
上一篇 2023年4月2日 下午5:48
下一篇 2023年4月2日 下午5:48

相关文章

  • 重温python基础:列表相加的方法(两个list [] 加法)

    哈喽兄弟么,今天咱们来复习一下列表相加的两个方法。 利用操作符+ +操作符 对象是list a = [1,2,3] b = [4,5,6] c = a+b print(c) #c的结果:[1,2,3,4,5,6]   利用extend extend 操作对象是list a = [1,2,3] b = [4,5,6] a.extend(b) print(a) …

    Python开发 2023年4月2日
    00
  • 利用Python快速实现一个线程池,非常简单

    雷猴啊,兄弟们!今天来展示一下如何用Python快速实现一个线程池。   一、序言 当有多个 IO 密集型的任务要被处理时,我们自然而然会想到多线程。但如果任务非常多,我们不可能每一个任务都启动一个线程去处理,这个时候最好的办法就是实现一个线程池,至于池子里面的线程数量可以根据业务场景进行设置。 比如我们实现一个有 10 个线程的线程池,这样可以并发地处理 …

    Python开发 2023年4月2日
    00
  • 为了快速了解原神,我用Python爬取了原神所有角色信息!

    原神是由米哈游制作发行的一款开放世界冒险游戏,号称全球玩家5600W,可以说是非常热门了,朋友都说好玩,哎,但我就是不玩,就是皮…       但是,今天我就要用python来打开“原神世界”的大门!探索一下游戏角色! 话不多说直接开整! 准备工作 这是本次需要使用到 的工具 nodejs pyexecjs requests 编辑器:pycharm环境:Py…

    Python开发 2023年3月31日
    00
  • TheFuck—Python写的超实用命令纠正工具

    哈喽兄弟们,我们在学习Python的过程中,有这么一款工具,可以轻松纠正我们写错的命令,简直太好用了~ The Fuck 是一款功能强大的、Python编写的应用程序,可用于纠正控制台命令中的错误,非常强大。此外,用户还可通过写Python代码的方式自定义修复规则。 修复效果如下动图所示: 更多示例如: 自动识别没有权限,在命令前面添加 sudo ➜ apt…

    Python开发 2023年4月2日
    00
  • Python丨听说这个地方的漫画不错,只用40行代码,给它全部爬下来

    前因后果 公司新来的小姐姐,超级喜欢看漫画,天天给我介绍,好烦~ 现在是2022年9月15日16点30,于是我决定, 五点下班前写个代码把她说的漫画全部爬下来,应付一下~ 再发篇文章揭露她的罪恶,嘿嘿~ 准备事项 环境使用 Python 3.8 Pycharm 2021.2版本   模块使用 import requests >>> # 数据…

    Python开发 2023年4月2日
    00
  • 奶奶常说,黑白照片看的不清晰,还好我会Python,分分钟给她变成彩色的~

    咳咳~ 其实是奶奶常说,艾欧尼亚昂扬不灭,正义将指引着我们!   好吧,并不是奶奶说,只是最近回家发现一些黑白老照片,看着不够清晰,然后实验了一波用Python把老照片变成彩色的。 代码展示 import requests # Python学习交流资料源码获取群 279199867 r = requests.post( “https://api.deepai…

    2023年4月2日
    00
  • Python实战小案例:如何读取文件并统计文件中的数值

    哈喽兄弟们,今天浅浅的实战一下,如何用Python计算文件内最大数与最小数平均值~ 一、实战场景 给定一个包含整数的文件,每行数字小于 200,统计文件中的最大最小值和平均值,并将结果写入文件中。 创建一个txt文件,随机输入几行数字,保存命名为 input 即可。 二、主要知识点 文件读写 基础语法 单行注释和多行注释 三、代码实战 马上安排! 1、创建 …

    Python开发 2023年4月2日
    00
  • 圣诞节快到了,教大家用Python画一个简单的圣诞树和烟花,送给那个她

    这不是圣诞节快到了,准备让让女朋友开心开心,也算是亲手做的,稍稍花了点心思。 话不多说,咱们直接来展示吧,学会了赶紧画给你的那个她吧! 本文分为两个大块,我们先来试试画圣诞树。 圣诞树 效果展示 代码展示 导入模块 import turtle as t from turtle import * import random as r import time  …

    Python开发 2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部