百木园-与人分享,
就是让自己快乐。

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

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

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


好了,不啰嗦了,等下大家要骂我了~

准备工作

环境模块

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

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

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

 # Python学习交流群  815624229

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

 

pip install 模块名 安装即可

目标地址

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

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

爬虫流程

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

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

完整代码

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)

 

兄弟们快去试试吧


来源:https://www.cnblogs.com/hahaa/p/16136639.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 20行Python代码实现爬取起点小说

相关推荐

  • 暂无文章