【项目实训】后台数据库搭建

【项目实训】后台数据库搭建前期我们已经爬取了各大公司岗位的相关信息 并且爬取了牛客网的面试经验贴

大家好,欢迎来到IT知识分享网。

 前期我们已经爬取了各大公司岗位的相关信息,并且爬取了牛客网的面试经验贴。之后我们将面试经验喂给大模型进行了面试经验总结,得到了良好的面试经验,以供用户参考。

为了提高我们系统的效率,降低系统反应时长,我们计划将大模型总结好的经验存储到数据库中,并把一些固定的比如公司岗位信息存储到数据库中,这样,就变成了查询数据库操作,会大大缩短反应时长。

并且经会议讨论,我们认真观察了爬取数据的结构内容,发现大部分经验贴中都涉及到了八股信息。于是我们打算爬取八股信息作为模拟面试模块的参考,以提高大模型性能。

接下来我进行了如下操作:

创建数据库表

公司岗位信息表

  • 设置如下字段:

【项目实训】后台数据库搭建

  • 使用python的mysql板块连接mysql,并将csv中的数据存储到数据库中

代码:

def mysql_connect(): '''建立连接''' # 打开数据库连接 db = pymysql.connect(host="localhost",port=3306, user="root",password="",db="xmsx",charset="utf8") #使用cursor创建一个游标对象 cursor = db.cursor() # 重置自增值序列到0 #cursor.execute("ALTER TABLE house_info AUTO_INCREMENT = 0") return db,cursor def mysql_close(db,cursor): '''关闭连接''' db.commit() cursor.close() db.close() def query(sql,*args): '''执行sql''' db,cursor = mysql_connect() try: cursor.execute(sql,args) result = cursor.fetchall() return result except Exception as e: db.rollback() print(e) finally: mysql_close(db,cursor) def load_data(): data = pd.read_csv(r'path.csv') #查看行和列 print(data.columns) print(data.dtypes) db, cursor = mysql_connect() # 建立连接 for index,row in data.iterrows(): # print(index) # print(row) company = row['company'] job_area = row['job_area'] job_name = row['job_name'] job_require = row['job_require'] job_duty_desciption = row['job_description'] sql = ('insert into companyandjob(company,' 'job_area,job_name,job_require,job_duty_desciption)' ' values(%s,%s,%s,%s,%s)') query(db,cursor,sql,company,job_area,job_name,job_require,job_duty_desciption) mysql_close(db, cursor) # 关闭连接

【项目实训】后台数据库搭建

导入成功如图:

【项目实训】后台数据库搭建

面试经验表

首先从牛客网以及其他网站爬取一些优质面经,然后我们保存到数据库中,以便进行数据可视化页面的前端展示。

爬虫得到的csv文件:

【项目实训】后台数据库搭建

  • 新建面试经验表,字段如下

【项目实训】后台数据库搭建

在建表中,发现设置为varchar存储字符不够,于是设计类型为longtext

  • 导入数据,得到结果

【项目实训】后台数据库搭建

八股表

从各个网站中爬取了各类别的八股信息,爬取过程和爬取公司官网类似,主要的工作量在于需要分析不同网站的结构,找到要提取数据的部分,精准定位进行提取。因此这里颇耗费了点时间。

因为网站中是按照面试题目类别进行展示的,所以我们也按照类别进行爬取

然后导入到了数据库中,爬虫得到的csv文件如下,(经过了清洗,只爬取了面试题目部分)

【项目实训】后台数据库搭建

导入到数据库中(和之前相同的逻辑)

【项目实训】后台数据库搭建

至此,数据库搭建完成。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/130708.html

(0)
上一篇 2025-08-13 16:15
下一篇 2025-08-13 16:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信