北京网页设计与网站建设关键词挖掘工具
前言
大家早好、午好、晚好吖 ❤ ~欢迎光临本文章
完整源码、素材皆可点击文章下方名片获取此处跳转
开发环境:
-
python 3.8 运行代码
-
pycharm 2022.3 辅助敲代码
-
requests 发送请求/第三方模块
模块安装:win + R 输入cmd 输入安装命令 pip install 模块名
如果出现爆红 可能是因为 网络连接超时 切换国内镜像源
案例基本思路流程:
一. 思路分析
找到数据来源 如何去采集单个章节的内容
如果是动态加载的数据 通过network去抓包分析
二. 代码实现
-
发送请求 通过代码的方式去访问 网站
-
获取数据 访问完网址之后 反应 网页代码
-
解析数据 提取我们需要用到的信息
-
保存数据 打包带走
代码展示
导入模块
import requests # 发送请求
import re
请求链接
main_url = 'https://****/book_8227/'
换一个章节 下载 ?
只需要获取到所有的章节链接 是不是我们就可以拿到整本小说的内容
html = requests.get(main_url).text
# <dd><a href="(.*?)">.*?</a></dd>
# <dd><a href="(.*?)">.*?</a></dd>
link_list = re.findall('<dd><a href="(.*?)">.*?</a></dd>', html)
for link in link_list:
如何去采集整本小说 / 代码能够实现小说下载通用性
url = main_url + link
1. 发送请求
response = requests.get(url)
2. 获取数据
<Response [200]>:
请求成功
html_data = response.text
3. 解析数据
结构化数据 : json数据 {"":"", "":""}
转成 字典 使用字典取值 / re
正则表达式
非结构化数据 : 网页源代码 css/xpath/re
什么是正则?
规则 搜索功能的高级用法
我忘记这中间是什么内容, 也不知道有多长, 还是想要匹配到这一整句话在内容当中出现的位置
.*?:
匹配任意字符 0次或者多次
少女年龄不过十四左右,.*?,不过那张稚气未脱的小脸
title = re.findall('<h1>(.*?)</h1>', html_data)[0]text = re.findall('<br><br>(.*?)</div>', html_data)[0]
代表一个空格
text = text.replace(' ', ' ')
<br />
代表一个换行
text = text.replace('<br />', '\n')text = title + "\n\n\n" + textprint(text)
4. 保存数据
a:
追加写入
w:
覆盖写入
f = open('斗破苍穹.txt', mode='a', encoding='utf-8')f.write(text)f.close()
尾语 💝
好了,今天的分享就差不多到这里了!
完整代码、更多资源、疑惑解答直接点击下方名片自取即可。
对下一篇大家想看什么,可在评论区留言哦!看到我会更新哒(ง •_•)ง
喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!