python获取系统内存、CPU、磁盘、平均负载信息并保存到数据库中

本主题主要考察的是python os模块调用linux命令、模块、函数调用以及通过python操纵数据库。

假设已经可以正常连接mysql数据库了,保存系统信息的数据库名称为hostinfo,相关的四个数据表分别名为cpuinfo、meminfo、diskinfo、loadinfo(数据库和表都是程序运行过程中自动创建的)

1.在开发目录下新建一个python的包,然后包含四个python文件:mem.py、load.py、disk.py、cpu.py以及一个程序运行的主文件main.py,结构如下:

这里写图片描述

2. 编写mem.py 文件

import os
def mem_usage():
    f = os.popen("free -m |grep Mem |awk '{print $2,$3,$4}'")
    return f.read()

if __name__ == "__main__":
    print  mem_usage()

3. 编写load.py文件

import os
def load_avg():
    f = os.popen("uptime | sed 's/,//g' | awk '{print $8,$9,$10}'")
    return f.read().strip()

if __name__ == "__main__":
    print load_avg()

4. 编写disk.py文件

import os
def disk_usage
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些思路和步骤: 1. 安装Scrapy和数据库相关的Python模块(如pymysql)。 2. 创建一个Scrapy项目,并在其定义一个爬虫,用于爬取关村网站上平板电脑的各项参数数据。 3. 在爬虫编写解析HTML页面的代码,提取出需要的数据,并且将数据保存Python字典。 4. 将字典的数据转换为SQL语句,并且使用数据库相关的Python模块将数据保存数据库。 下面是大致的代码示例: ```python import scrapy import pymysql class TabletSpider(scrapy.Spider): name = 'tablet' allowed_domains = ['zol.com.cn'] start_urls = ['https://detail.zol.com.cn/tablet_pc/'] def parse(self, response): for item in response.css('.list-box .list-item'): data = { 'name': item.css('.pro-intro h3 a::text').get(), 'price': item.css('.pro-intro .price-type .price-normal::text').get(), 'screen_size': item.css('.pro-intro .param .param-list .param-item:nth-child(1)::text').get(), # 其他需要爬取的参数 } yield data def close(self, reason): conn = pymysql.connect(host='localhost', user='root', password='123456', db='test') cursor = conn.cursor() for data in self.crawler.stats.get_value('items'): sql = f"INSERT INTO tablet (name, price, screen_size) VALUES ('{data['name']}', '{data['price']}', '{data['screen_size']}')" cursor.execute(sql) conn.commit() cursor.close() conn.close() ``` 在上面的代码,我们定义了一个名为`TabletSpider`的爬虫,用于爬取关村网站上平板电脑的各项参数数据。在`parse`函数,我们使用Scrapy的CSS选择器提取需要的数据,并且将数据保存Python字典。在`close`函数,我们使用`pymysql`模块连接到本地的MySQL数据库,并将爬取到的数据保存数据库。 需要注意的是,上面的代码只是一个示例,具体的实现方式可能会因为网站的HTML结构而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值