4万6千多高中作文大全ACCESS数据库

Posted 数据挖掘整理

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4万6千多高中作文大全ACCESS数据库相关的知识,希望对你有一定的参考价值。

作文类的数据库虽然已经有很多,有近万条的,也有2万条的,但今天弄到了小学、中学、高中一个系列的数据,而且最主要的是数据的记录数很多。这份高中作文包含46169条记录,分类也很好。

grade字段统计:高一(14062)、高二(13375)、高三(17381)、高考(1351)。

type字段统计:散文诗歌(8982)、叙事(8955)、议论文(6791)、日记(4334)、话题(3599)、写人(3033)、写景(2635)、想象(1840)、小说(1663)、读后感(1422)、书信(403)、说明文(337)、演讲稿(336)、状物(312)……等。

该数据库不但提供ACCESS数据库(扩展名是MDB),还会提供EXCEL文件(扩展名是xlsx)以及SQLite3数据库版本(扩展名是db),你可以根据需要导入导出到其他的数据库。

《作文精编大全》,Python程序员用爬虫制作的

文章目录

⛳️ 实战场景

本篇博客又是一个 Python 爬虫实战,目标站点时作文吧,一个充满作文的站点 zuowen8.com,由于其站点有那么一点点的付费需求,所以有一名爸爸级开发工程师不开心了,决定写一个小小的爬虫,他要的不多,就是一年级那一点点作文。

就是下面这个图让程序员干活的~

打开一年级作文列表页,页面如下所示,接下来要完成的第一步就是采集这个列表页的数据。

⛳️ 采集列表页

Python 在编写简易爬虫的时候,requests + lxml 是最简单的方式。

import requests
import json

headers = 
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36"


res = requests.get('https://www.zuowen8.com/xiaoxue/yinianjizuowen/', headers=headers)
print(res.text)

直接运行代码,会得到中文乱码界面,即下图所示内容。

对响应对象设置编码,代码如下:

res = requests.get('https://www.zuowen8.com/xiaoxue/yinianjizuowen/', headers=headers)
res.encoding = 'utf-8' # 编码错误
print(res.text)

结果设置 utf-8 之后,编码依旧错误,此时就需要查看一下网页源码中的具体编码设置了,打开开发者工具,查看源码编码,发现网站采用的是 gb2312,参考该值进行设置即可。

res = requests.get('https://www.zuowen8.com/xiaoxue/yinianjizuowen/', headers=headers)
res.encoding = 'gb2312'
print(res.text)

⛳️ 提取列表作文地址

页面源码获取到之后,就可以提取作文详情页地址了,即下图红框区域链接。

res.encoding = 'gb2312'
e = etree.HTML(res.text)
h3_list = e.xpath("//h3/a/@href")
print(h3_list)

链接获取完毕,需要将其进行拼接,得到详情页完整地址,使用 f-strings 即可。

base_domain = 'https://www.zuowen8.com'
for url in h3_list:
    url = base_domain+url
    print(url)

详情页地址拼接完毕,再次使用 requests 模块对详情页源码进行捕获。

for url in h3_list:
    url = base_domain+url
    detail = requests.get(url,headers=headers)
    detail.encoding = 'gb2312'
    print(detail.text)

获取到作文详情页面源码,提取作文内容,即下图红框区域展示信息。

⛳️ 提取作文 8 内容

观察上图可以看到作文内容全部都在 class 等于 contentdiv 中,所以对其解析即可。

for url in h3_list:
    url = base_domain+url
    detail = requests.get(url,headers=headers)
    detail.encoding = 'gb2312'
    d = etree.HTML(detail.text)
    content = d.xpath('//div[@class="content"]//p/text()')
    print(content)

上述 xpath 表达式仅提取 div 元素中的子标签 p 的内部文字,恰好忽略了标签 u 中的反爬信息,即下图绿框数据需要被忽略。

运行代码,得到的内容如下所示,每一篇作文都按照段落提取成列表。

['今天,我和妹妹到楼下去抓蚂蚁。我抓了很多只大蚂蚁,大……', '后来,我又用棍子挑蚂蚁,', '谁知蚂……来。', '地上掉了一只辣椒,我看见很多蚂蚁在啃辣椒,有些蚂蚁被辣得跑掉了,有些蚂蚁在津津有味地啃着辣椒,还有几只蚂蚁想拖动辣椒,但是拖了半天都没拖动。']

最后只需要将列表中的内容进行拼接,就可以完成属于你的《作文精编大全》。

📢📢📢📢📢📢
💗 你正在阅读 【梦想橡皮擦】 的博客
👍 阅读完毕,可以点点小手赞一下
🌻 发现错误,直接评论区中指正吧
📆 橡皮擦的第 739 篇原创博客

从订购之日起,案例 5 年内保证更新

以上是关于4万6千多高中作文大全ACCESS数据库的主要内容,如果未能解决你的问题,请参考以下文章

谁给点高中的英语句子要求带中文100句左右

有哪些好的写作文的app

写作文的软件app

高中英语常见的近义词同义词

[转]中国象棋谚语大全

关于机器人的英语作文